/*region general*/
body, html {
	min-height: 100%;
	width: 100%;
}

html {
	height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	position: relative;
	margin: 0;
	min-width: 320px;
	min-height: 100%;
	height: auto;
	background-color: #ebebeb;
}

header, main, footer, a, li, ul, img, input, nav, h1, h2, h3, h4, h5 {
	text-align: inherit;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

.Background {
	position: fixed;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 0;
	margin: 0;
	background: #FFFFFF url(../images/blank.gif) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-attachment: fixed;
}

.LoginLogo {
	position: fixed;
	z-index: 10;
	display: block;
	width: 506px;
	height: 137px;
	right: 0;
	bottom: 0;
	padding: 0;
	margin: 10px 30px;
	text-decoration: none;
	background: transparent url(../images/logo.svg) no-repeat center center;
}

A.LoginLogo:hover {
	text-decoration: none;
}

.Error a {
	color: var(--color-blue-light) !important;
}

.LoginSidebar {
	position: fixed;
	z-index: 100;
	display: block;
	width: 270px;
	height: 100%;
	min-height: 450px;
	top: 0;
	bottom: 0;
	left: 0;
	text-align: center;
	padding: 0 65px 120px 65px;
	margin: 0;
	background: transparent url(../images/logo.svg) repeat;
}

.LoginSidebar form {
	position: absolute;
	bottom: 120px;
	margin: 0 auto 120px auto;
}

.LoginSidebar input {
	background-color: #FFFFFF;
}

.LoginSidebar .Title {
	font-size: 24px;
	color: #FFFFFF;
	line-height: 32px;
	text-align: center;
}

.LoginSidebar .Textnormal {
	font-size: 14px;
	color: #FFFFFF;
	line-height: 18px;
	text-align: center;
}

.LoginSidebar .Error {
	/*text-shadow: 0 -1px #FFFFFF, 1px 0 #FFFFFF, 0 1px #FFFFFF, -1px 0 #FFFFFF;*/ /*text-shadow: 0 -1px 1px #FFFFFF, 0 1px 1px #666666;*/ text-shadow: 0 0 0.2em #FFFFFF, 0 0 0.2em #FFFFFF, 0 0 0.2em #FFFFFF;
}

img {
	border: none;
}

label {
	font-size: 18px;
	line-height: 1.44;
}

/* == STANDARD ==*/
.Desktop {
	display: block !important;
}

.Mobil {
	display: none !important;
}

b, strong, .Textbold {
	font-weight: 800;
}

.ErrorContainer .Message, .ErrorContainer .Message *, .MessageContainer .Message, .MessageContainer .Message *, .ConfirmContainer .Message, .ConfirmContainer .Message * {
	font-weight: 500;
	font-size: 16px;
	line-height: 22px;
}

.ErrorContainer .Close, .MessageContainer .Close, .ConfirmContainer .Yes, .ConfirmContainer .No {
	font-size: 16px;
}

.soon:after {
	content: "Coming soon";
	-moz-transform: rotate(10deg) !important;
	-ms-transform: rotate(10deg) !important;
	-o-transform: rotate(10deg) !important;
	-webkit-transform: rotate(10deg) !important;
	transform: rotate(10deg) !important;
	color: #B4140A;
	text-transform: uppercase;
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	line-height: 12px;
	text-align: center;
	display: inline-block !important;
	width: auto !important;
	max-width: 70px;
	height: auto !important;
	/* right: 0 !important; */ top: 50% !important;
	position: absolute !important;
	margin: -10px 0 0 -10px !important;
	background: none !important;
}

.navlink.soon {
	margin-right: 80px !important;
}

.navlink.soon:after, h3.soon:after, .soon:after {
	margin: -10px 0 0 5px !important;
}

article ul, article ol {
	font-size: inherit;
	line-height: inherit;
	color: var(--color-font);
	text-align: left;
}

.TextCenter {
	text-align: center !important;
}

.TextLeft {
	text-align: left !important;
}

.TextRight {
	text-align: right !important;
	margin-right: 0;
}

.nowrap {
	white-space: nowrap !important;
}

.fullwidth {
	width: 100% !important;
}

.flex-row {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.flex-row.flex-start {
	justify-content: start;
}

.flex-row.flex-center {
	justify-content: center;
}

.flex-row.flex-end {
	justify-content: end;
}

.bg-covered {
	background-size: cover !important;
}

.visible {
	display: block;
}

.hidden {
	display: none;
}

.table {
	display: table;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex-grow {
	flex-grow: 1;
}

.flex-stretch {
	align-items: stretch;
}

.col-10 {
	width: 10% !important;
}

.col-20 {
	width: 20% !important;
}

.col-25 {
	width: 25% !important;
}

.col-30 {
	width: 30% !important;
}

.col-33 {
	width: 33% !important;
}

.col-40 {
	width: 40% !important;
}

.col-50 {
	width: 50% !important;
}

.col-60 {
	width: 60% !important;
}

.col-70 {
	width: 70% !important;
}

.col-80 {
	width: 80% !important;
}

.col-90 {
	width: 90% !important;
}

.col-100 {
	width: 100% !important;
}

.table-row {
	display: table-row;
}

.table-cell {
	display: table-cell;
}

.More, .Station .More {
	display: block;
	font-weight: normal;
	font-style: normal;
	font-size: 14px;
	text-decoration: none;
	color: #1e405a;
	line-height: 20px;
	text-align: left;
	margin: 0 0 0 0;
}

.More::before, .Station .More::before {
	content: "> ";
}

span.clear {
	display: block;
	position: absolute;
	z-index: 100;
	top: 50%;
	right: 0;
	width: 24px;
	height: 34px;
	margin: -17px 0 0 0;
	opacity: 1;
	cursor: pointer;
	background: transparent url('../images/icons/close_grey.svg') no-repeat center;
	background-size: 34px auto;
}

section {
	display: block;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
	max-width: 1400px;
	overflow: visible;
	text-align: center;
	clear: both;
	padding: 0;
	margin: 0 auto;
}

#Content {
	margin: 0 auto;
	padding: 0 35px;
	min-height: 300px;
	background-color: #ffffff;
	text-align: left;
}

.white {
	color: #ffffff;
}

.blue_dark {
	color: var(--color-blue-dark);
}

.blue_light {
	color: var(--color-blue-light);
}

.Download, .Telefon, .Verweis, .Anfahrt, .Email {
	display: block;
	overflow: visible;
	font-size: 16px;
	line-height: 26px;
	font-weight: 400;
	font-style: normal;
	text-decoration: none;
	vertical-align: middle;
	margin: 0;
	padding: 1px 0 1px 0;
	text-align: left;
}

.Download {
	padding: 3px 0 3px 35px;
	background: transparent url('../images/icons/download_blue.svg') no-repeat 0 center;
	background-size: auto 25px;
}

.Verweis {
	padding: 3px 0 3px 35px;
	background: transparent url('../images/icons/link_blue.svg') no-repeat 0 7px;
	background-size: auto 23px;
}

.Telefon, .phone {
	padding: 3px 0 3px 35px;
	background: transparent url('../images/icons/phone_blue.svg') no-repeat 7px center;
	background-size: auto 25px;
}

.Email {
	padding: 3px 0 3px 35px;
	background: transparent url('../images/icons/mail_blue.svg') no-repeat 0 center;
	background-size: 30px auto;
}

.animation-visible {
    opacity: 0;
    transform: translateY(20px) scale(0.95);
    transition: opacity 0.4s cubic-bezier(0.65, 0.05, 0.36, 1),
    transform 0.4s cubic-bezier(0.65, 0.05, 0.36, 1);
}

.animation-visible.visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

/*endregion*/

/*region header*/
header {
	position: fixed;
	z-index: 150;
	top: 0;
	left: 0;
	right: 0;
	display: block;
	text-align: center;
	width: 100%;
	height: 120px;
	clear: both;
	margin: 0;
	padding: 0;
	opacity: 1;
	background-color: #ffffff;
	-webkit-box-shadow: 0 0 5px 0 #999999;
	-moz-box-shadow: 0 0 5px 0 #999999;
	box-shadow: 0 0 5px 0 #999999;
}

header.Minimized {
	/*height: 80px !important;*/ border: 0;
}

header .Container {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	max-width: initial;
	width: 100%;
	height: 100%;
	padding: 0;
}

header .Bar {
	display: block;
	width: 5%;
	height: 63px;
	background: transparent url(../images/bar.png) no-repeat center;
	background-size: cover;
	z-index: 250;
}

header.Minimized .Bar {
	height: 60px;
	background-size: auto 60px;
}

header .logo {
	display: block;
	width: auto;
	height: 70px;
	margin: 25px 30px;
	padding: 0;
	text-align: right;
	z-index: 200;
}

header.Minimized .logo {
	margin: 10px 30px;
	width: auto;
	height: 60px;
}

header .logo:hover {
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
	opacity: 1;
}

header .logo img {
	height: 100%;
	width: auto;
}

header #NavigationToggle {
	position: absolute;
	z-index: 150;
	display: none;
	padding: 0;
	background: none;
	width: 50px;
	height: 50px;
	cursor: pointer;
}

header #Navigation {
	display: block;
	flex: 1;
	margin: 0 1%;
	text-align: center;
	z-index: 100;
}

header #Navigation ul {
	display: flex;
	position: relative;
	padding: 0;
	margin: 0;
	text-align: left;
	list-style: none;
}

header #Navigation li {
	position: relative;
	display: list-item;
	float: left;
	height: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: -webkit-match-parent;
	white-space: nowrap;
}

header #Navigation li.login {
	margin-left: auto;
}

header #Navigation li a, header #Navigation li a.Active {
	display: block;
	padding: 45px 20px;
	align-content: center;
	align-items: center;
	font-style: normal;
	font-weight: 300;
	font-size: 24px;
	line-height: 30px;
	text-decoration: none;
	text-transform: uppercase;
	color: var(--color-font);
	cursor: pointer;
}

header.Minimized #Navigation li a {
	padding-top: 24px;
	padding-bottom: 24px;
}

header #Navigation li a:hover, header #Navigation li a.Active, header #Navigation li a.Active:hover {
	text-decoration: none;
	color: var(--color-blue-dark);
}

header #Navigation li a .icon {
	position: relative;
	display: inline-block;
	float: left !important;
	vertical-align: bottom;
	height: 30px;
	width: 30px;
	margin: 0 10px 0 0;
	background: transparent url('../images/icons/registration_blue_dark.svg') no-repeat center;
	background-size: contain;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

header #Navigation li a.Active .icon, header #Navigation li a:hover .icon {
	-ms-filter: none;
	-webkit-filter: grayscale(0);
	filter: none;
}

header #Navigation li.trailers a .icon {
	background: transparent url('../images/icons/trailer_blue_dark.svg') no-repeat center;
	background-size: cover;
}

header #Navigation li.trailers.hapert a .icon {
	background: transparent url('../images/icons/trailer_hapert_blue_dark.svg') no-repeat center;
	background-size: cover;
}

header #Navigation li.stations a .icon {
	background: transparent url('../images/icons/locations_blue_dark.svg') no-repeat center;
	background-size: contain;
}

header #Navigation li.dashboard a .icon {
	background: transparent url('../images/icons/dashboard_blue_dark.svg') no-repeat center;
	background-size: 20px auto;
}

header #Navigation li.login a .icon {
	background: transparent url('../images/icons/login_blue.svg') no-repeat center;
	background-size: contain;
}

header #Navigation li.participate a .icon {
	background: transparent url('../images/icons/registration_blue_dark.svg') no-repeat center;
	background-size: contain;
}

header #Navigation li.faq a .icon {
	background: transparent url('../images/icons/info_blue_dark.svg') no-repeat center;
	background-size: contain;
}

header #Navigation li.time a .icon {
	background: transparent url('../images/icons/24-7_blue_dark.svg') no-repeat center;
	background-size: contain;
}

header #Navigation li.idea a .icon {
	background: transparent url('../images/icons/idea_blue_dark.svg') no-repeat center;
	background-size: contain;
}

header .burgercontainer {
	display: inline-block;
	box-sizing: border-box;
	width: 30px;
	height: 40px;
	margin: 0 10px 0 4%;
	padding: 14px 0 0 0;
}

header #NavigationToggle .PullRight {
	display: block;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	cursor: pointer;
	background-size: 30px 30px;
}

header #Navigation.toggle-hidden {
	opacity: 0;
	visibility: hidden;
}

header.Minimized #Navigation.toggle-visible {
	margin: 0;
}

.Header .profile {
	box-sizing: border-box;
	max-width: 350px;
	overflow: hidden;
}

.Header .profile.logged {
	margin-left: auto;
}

header.logged .Mobile, header.logged ul li.login {
	display: none !important;
}

.Header .profile .Profileimage {
	position: relative;
	float: right;
	display: inline-block;
	margin: 5px 5px 5px 5px;
	border: 1px solid #c6c4c5;
}

.Header .profile .infos {
	text-align: right;
	position: relative;
	display: flex;
	align-items: center;
	margin: 0 10px 0 0;
	align-content: center;
	justify-content: flex-end;
}

.Header .profile .user {
	display: block;
	max-width: 200px;
	overflow: hidden;
	padding: 6px 10px 4px 10px;
	margin: 5px 6px;
	background-color: #e6e6e6;
	font-family: 'Figtree', sans-serif;
	font-size: 14px;
	line-height: 18px;
}

.Header .profile a.button {
	display: inline-block;
	padding: 5px 10px;
	margin: 5px 10px 5px 10px;
	background-color: var(--color-blue-dark);
	font-size: 18px;
	line-height: 24px;
	font-weight: 300;
	text-transform: uppercase;
	color: #ffffff;
	cursor: pointer;
}

.Header .profile a.button span {
	font-size: inherit;
	line-height: inherit;
}

.Header .profile a:hover {
	text-decoration: none;
}

.Header .profile .icon {
	position: relative;
	display: inline-block;
	height: 30px;
	width: 30px;
	margin: 5px;
	padding: 5px;
	border: 0;
	background: transparent url(../images/blank.gif) no-repeat center;
	background-size: auto 90%;
	box-sizing: border-box;
	cursor: pointer;
}

.Header .profile .icon:hover {
	opacity: 0.5;
}

.Header .profile .icon.logout {
	background-image: url("../images/icons/logout_blue_dark.svg");
}
.Header .profile .icon.settings {
	background-image: url("../images/icons/settings_blue_dark.svg");
}
.Header .profile .icon.dashboard {
	background-image: url("../images/icons/dashboard_blue_dark.svg");
}

header .language-selection {
	position: absolute;
	bottom: 5%;
	left: 50%;
	margin: 0;
	padding: 10px 15px 10px 0;
	list-style: none;
	transform: translateX(-50%);
	color: #FFF;
}

header .languageline {
	display: inline-block;
	width: 1px;
	height: 8px;
	vertical-align: bottom;
	color: #000;
	border: 0 none;
	background-color: #000;
}

header .language-selection li {
	display: inline;
	margin: 2px;
	text-transform: uppercase;
}

header .language-selection li a {
	font-size: 11px;
	line-height: 24px;
	padding: 8px 2px 8px 2px;
	text-transform: none;
	color: #000000;
	background-color: transparent;
}

.active_language {
}

header .language-selection li a.en {
	background-size: 30px 30px;
}

header .language-selection li a.de {
	background-size: 30px 30px;
}

header .language-selection li a:hover {
	text-decoration: none;
	opacity: 0.7;
}

#userinfo {
	margin: 70px 0 0 0;
	text-align: left;
	color: #ffffff;
	font-size: 16px !important;
	line-height: 20px;
	font-weight: 300;
}

#userinfo span {
	display: block;
}

.langposition {
	position: absolute;
	bottom: 5%;
	left: 10%;
	color: #FFF !important;
}

header .languageline {
	height: 12px;
}

#langopt-menu {
	background-color: var(--color-theme-red);
	overflow: hidden;
}

.ui-button .ui-icon {
	margin-top: 3px;
	margin-left: 5px;
}
/*endregion*/

/*region glider*/
.glide__track, .glide__slides {
	height: 100%;
	position: relative;
	z-index: 100;
}

.glide__arrows {
	display: block;
	position: absolute;
	z-index: 200;
	top: 50%;
	left: 0;
	right: 0;
	width: 100%;
	height: 0;
}

.glide-home {
	position: absolute;
	top: 0;
	left: 0;
	overflow: visible;
	z-index: 999;
}

.glide-parent-height {
	height: 100%;
}

.glide__slide {
	position: relative;
}

.glide__slide .Icon247 {
	position: absolute;
	left: 4%;
	top: 4%;
	width: 70px;
	height: 70px;
	background-image: url("../images/icons/24-7_blue_dark.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

.glide__overlay, .glide__background {
	display: block;
	height: 100%;
	z-index: 10;
	overflow: hidden;
	text-align: left;
	margin: auto;
}

.glide__background {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.glide__slide a {
	opacity: 1 !important;
}

.glider__title, .glider__subtitle {
	position: absolute;
	display: block;
	bottom: 72%;
	left: 10%;
	z-index: 100;
	max-width: 40%;
	padding: 5px 15px;
	-webkit-transform: rotate(-8deg);
	-moz-transform: rotate(-8deg);
	-ms-transform: rotate(-8deg);
	-o-transform: rotate(-8deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
	-moz-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	-o-transform-origin: 0% 0%;
	-webkit-transform-origin: 0% 0%;
	-webkit-transition: left 0.4s 0.4s ease-in-out, right 0.4s 0.4s ease-in-out, bottom 0.4s 0.8s ease-in-out, top 0.4s 0.8s ease-in-out;
	-moz-transition: left 0.4s 0.4s ease-in-out, right 0.4s 0.4s ease-in-out, bottom 0.4s 0.8s ease-in-out, top 0.4s 0.8s ease-in-out;
	-ms-transition: left 0.4s 0.4s ease-in-out, right 0.4s 0.4s ease-in-out, bottom 0.4s 0.8s ease-in-out, top 0.4s 0.8s ease-in-out;
	-o-transition: left 0.4s 0.4s ease-in-out, right 0.4s 0.4s ease-in-out, bottom 0.4s 0.8s ease-in-out, top 0.4s 0.8s ease-in-out;
	transition: left 0.4s 0.4s ease-in-out, right 0.4s 0.4s ease-in-out, bottom 0.4s 0.8s ease-in-out, top 0.4s 0.8s ease-in-out;
}

.glider__title {
	background-color: var(--color-blue-light);
}

.glider__subtitle {
	bottom: auto;
	background-color: var(--color-blue-dark);
}

.glide__slide.glide__slide--active .glider__title {
	left: 6%;
}

.glide__slide.glide__slide--active .glider__subtitle {
	top: 28%;
}

a.glider__title, a.glider__subtitle, a.glider__button {
	text-decoration: none;
}

.glider__title h1, .glider__subtitle h2, .glider__subtitle span {
	display: block;
	font-size: 36px;
	font-weight: normal;
	text-decoration: none;
	color: #FFFFFF;
	line-height: 40px;
	text-align: center;
	text-transform: uppercase;
}

.glide__arrow {
	position: absolute;
	width: 70px;
	height: 100px;
	border: none;
	display: block;
	overflow: hidden;
	left: 0;
	margin: 0 0 0 0;
	margin-left: 0;
	padding: 0;
	cursor: pointer;
	z-index: 200;
	box-shadow: none;
	text-shadow: none;
	border-radius: 0;
	opacity: 0.5;
	transform: translateY(-50%);
}

.glide__arrow:hover {
	opacity: 1;
}

.home, .glide, .glide .glide__track, .glide .glide__slides, .glide .glide__slide, .glide .glide__background {
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: none;
	transition: none;
}

/*endregion*/

/*region side-navigation*/
#NavigationSide {
	position: fixed;
	z-index: 40;
	right: 10%;
	bottom: -7px;
	box-sizing: border-box;
	height: auto;
	margin: 0 0 0 0;
	padding: 0;
}

#NavigationSide ul {
	display: flex;
	margin: 0 auto;
	padding: 0 0;
	list-style: none;
	text-align: center;
}

#NavigationSide li {
	position: relative;
	display: block;
	overflow: visible;
	margin: 0 5px;
	padding: 0;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

#NavigationSide li a.Button {
	position: relative;
	display: inline-block;
	width: 30px;
	height: 30px;
	margin: 0;
	padding: 10px;
	cursor: pointer;
	border-bottom: none;
	background-repeat: no-repeat;
	background-position: center;
}

#NavigationSide li:hover a.Button {
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	opacity: 1;
	box-shadow: unset;
}
/*endregion*/

/*region footer*/
.Footer {
	position: relative;
	display: block;
	width: auto;
	height: auto;
	padding: 3% 0 3% 0;
	margin: 0 auto;
	text-align: right;
	background-color: var(--color-blue-dark);
	z-index: 90;
}

.Footer .Container {
	display: block;
	box-sizing: border-box;
	max-width: 1400px;
	margin: 0 auto;
	text-align: right;
}

.Footer #NavigationFooter {
	display: inline-block;
	position: relative;
	width: auto;
	height: auto;
	padding: 0;
	text-align: center;
	z-index: 200;
}

.Footer #NavigationFooter ul {
	display: block;
	padding: 0;
	margin: 0 0;
	text-align: center;
	list-style: none;
}

.Footer #NavigationFooter li {
	position: relative;
	display: list-item;
	float: left;
	padding: 0;
	margin: 0 15px;
	list-style: none;
	text-align: -webkit-match-parent;
}

.Footer #NavigationFooter li a, .Footer #NavigationFooter li.Glue, .Footer #NavigationFooter li a.Active {
	display: block;
	margin: 0;
	padding: 0 0;
	font-style: normal;
	font-weight: 300;
	text-decoration: none;
	color: #ffffff;
	font-size: 20px;
	line-height: 30px;
	text-transform: uppercase;
}

.Footer #NavigationFooter li a.Active {
	text-decoration: none;
	font-weight: 800;
	color: var(--color-blue-light);
	opacity: 0.75;
}

.Footer .SocialMedia {
	display: inline-block;
	float: left;
}

.Footer .SocialMedia a {
	display: inline-block;
	width: 40px;
	height: 40px;
	background-position: center;
	background-size: cover;
	background-color: transparent;
	background-repeat: no-repeat;
	overflow: hidden;
	text-indent: 1000px;
	white-space: nowrap;
	margin: -5px 10px 0 0;
}
.Footer .SocialMedia a:hover {
	text-decoration: none;
	opacity: 0.5;
}
.Footer .SocialMedia a.facebook {
	background-image: url(../images/icons/socialmedia/facebook.svg);
}
.Footer .SocialMedia a.instagram {
	background-image: url(../images/icons/socialmedia/instagram.svg);
}
/*endregion*/

/*region seomap*/
section.seomap {
	width: 95%;
	box-sizing: border-box;
}

section.seomap .container {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-content: center;
	justify-content: flex-start;
	align-items: stretch;
	max-width: 1280px;
	margin: 0 auto;
	padding: 3% 0 3% 0;
	box-sizing: border-box;
}

section.seomap .figure {
	display: block;
	box-sizing: border-box;
	width: 20%;
	height: 100px;
	background-image: url("../images/icons/rent.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center top;
}

section.seomap .cities {
	display: block;
	box-sizing: border-box;
	width: 80%;
	margin: 0;
	padding: 0 0 0 4%;
	list-style: none;
	text-align: center;
	line-height: 18px;
}

section.seomap .cities li {
	display: inline-block;
	font-size: 14px;
	line-height: 18px;
	margin: 0;
}

section.seomap .cities li a, section.seomap .cities li::after {
	display: inline-block;
	box-sizing: border-box;
	margin: 0 10px;
	padding: 0;
	font-style: normal;
	font-weight: 300;
	font-size: 14px;
	line-height: 20px;
	color: var(--color-font);
	text-decoration: none;
}

/*section.seomap .cities li::after {
	content: "|";
	display: inline-block;
	font-size: 14px;
	line-height: 14px;
	margin: 0 10px;
}*/

section.seomap .cities li b {
	display: inline-block;
	width: 1px;
	height: 1px;
	text-indent: -1000px;
	overflow: hidden;
}
/*endregion*/

/*region home*/
.home {
	position: relative;
	width: 100%;
	z-index: 20;
}

.home #top {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	flex-direction: row;
	align-content: center;
	justify-content: center;
	align-items: center;
	background: #ffffff;
}

.home .left, .home .right {
	display: block;
	position: relative;
	width: 30%;
	background-color: #ffffff;
	z-index: 100;
}

.home .right::before {
	content: '';
	display: block;
	padding-top: 43%;
}

.home .search, .home .trailers {
	display: block;
	position: relative;
}

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

.home .search .formSearch {
	float: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 90%;
	max-width: 430px;
	margin: 5% auto;
	padding: 0;
	z-index: 999;
}

.home .search .formSearch #Countries {
	text-align: left;
}

.home .search .formSearch .background {
	position: relative;
	display: block;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	height: auto;
	margin-top: 10px;
}

.home .search .formSearch #trailer-placeholder {
	font-size: 24px;
	line-height: 28px;
	font-weight: 300;
}

.home .search .formSearch .info247 {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	display: block;
	background-color: #daf0fa;
	padding: 10px 0;
	margin: 15px 0 -5px 0;
	text-align: center;
}

.home .search .formSearch .info247 img {
	position: relative;
	box-sizing: border-box;
	max-width: 100%;
	width: auto;
	height: 34px;
	margin: 0 auto;
	display: block;
}

.home .search .formSearch .info247:before {
	position: absolute;
	content: "";
	box-sizing: border-box;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	display: inline-block;
	padding: 0;
	margin: -30px -30px 0 0;
	background: transparent url(../images/button_new.svg) no-repeat center;
	background-size: contain;
	-webkit-animation: bounce 2s infinite 5s;
	-o-animation: bounce 2s infinite 5s;
	animation: bounce 2s infinite 5s;
}

@keyframes bounce {
	0%, 100%, 20%, 50%, 80% {
		-webkit-transform: translate(0, 0);
		-ms-transform: translate(0, 0);
		transform: translate(0, 0);
	}
	40% {
		-webkit-transform: translate(10px, -10px);
		-ms-transform: translate(10px, -10px);
		transform: translate(10px, -10px);
	}
	60% {
		-webkit-transform: translate(5px, -5px);
		-ms-transform: translate(5px, -5px);
		transform: translate(5px, -5px);
	}
}

.home .search .formSearch .start-search {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	float: left;
	min-width: 0;
	max-width: 100%;
	margin: 5px 0 5px 0;
}

.home .search .formSearch .start-search .toggle {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto 0 auto;
	padding: 0.5em 45px 0.5em 0.7em;
	background-color: #ffffff;
	font-size: 24px;
	line-height: 28px;
	color: #a0a0a0;
	border: 1px solid #dedede;
	/*border-bottom: 1px solid var(--color-font);*/ overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	z-index: 900;
}

.home .search .formSearch .start-search span.expander {
	display: block;
	position: absolute;
	top: 0;
	right: -1px;
	left: auto;
	width: 40px;
	height: 100%;
	margin: 0 0 0 0;
	background-image: url(../images/icons/pulldown_white.svg);
	background-color: var(--color-blue-dark);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 30px auto;
	opacity: 1;
	cursor: pointer;
}

.home .search .formSearch .toggle-content {
	position: absolute;
	overflow: hidden;
	width: 200%;
	height: 0;
	left: 0;
	top: 100%;
	border: 5px solid #ffffff;
	-webkit-box-shadow: 1px 3px 10px rgb(0 0 0 / 20%);
	-moz-box-shadow: 1px 3px 10px rgba(0,0,0,0.2);
	box-shadow: 1px 3px 10px rgb(0 0 0 / 20%);
	z-index: 999;
}

.home .search .toggle-content.toggle-visible {
	padding: 15px 15px 10px 15px;
	height: auto;
	overflow: visible;
}

.home .search .formSearch .start-search .Textfett {
	font-size: 20px;
	line-height: 26px;
}

.home .search .formSearch .start-search .tooltip-container, .tooltip-container {
	float: left;
	width: 50%;
	display: inline-block;
	position: relative;
	height: auto;
	padding: 0 10px 0 0;
	margin: 0 0 0 0;
	box-sizing: border-box;
	line-height: 0;
	font-size: 0;
}

.home .search .formSearch .start-search label {
	display: inline-block;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: auto;
	max-width: 100%;
	margin: 0 0 0 10px;
	padding: 0 0 0 25px;
	font-size: 18px;
	line-height: 26px;
}

.home .search .formSearch .start-search .Feld {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	padding: 0.5em 45px 0.5em 0.7em;
	font-size: 24px;
	line-height: 28px;
	font-weight: 300;
	text-decoration: none;
	color: var(--color-font);
	border: 1px solid #dedede;
	/*border-bottom: 1px solid #dedede;*/ background-color: #ffffff;
}

.home .search .formSearch .start-search span.clear {
	top: 0;
	width: 40px;
	height: 100%;
	margin: 0 0 0 0;
	background-image: url('../images/icons/close_white.svg');
	background-color: var(--color-blue-dark);
}

.home .search .formSearch .start-search .More {
	float: right;
	font-size: 18px;
	line-height: 26px;
	margin: 10px 0 0 30px;
	cursor: pointer;
}

.home .search .formSearch .Button {
	width: 100%;
	margin: 5px 0 5px 0;
	padding: 12px 10px;
	background-color: var(--color-blue-dark);
	font-size: 24px;
	line-height: 28px;
	font-weight: 300;
	text-align: center;
	letter-spacing: 1px;
	color: #ffffff;
}

.home .trailers {
	height: 0;
	padding-bottom: 83.5%;
	margin: 0 10%;
}

.home .trailers .glide__slide {
	display: block;
	position: relative;
	overflow: hidden;
	text-align: left;
}

.home .trailers .glide__slide a {
	display: block;
	height: 0;
	overflow: hidden;
	box-sizing: border-box;
	padding: 5% 10% 103% 10%;
	line-height: 13px;
}

.home .trailers .glide__slide img {
	display: block;
	width: 120%;
	max-width: 120%;
	height: auto;
	margin: 15% -10% 5% -10%;
}

.home .trailers .title-inline, .home .trailers .title-addon {
	display: block;
	font-size: 13px;
	line-height: 13px;
	text-transform: none;
	color: #58585a;
}

.home .trailers .title-inline {
	text-align: center;
}

.home .trailers .glide__arrow {
	width: 20px;
	height: 20px;
	box-shadow: none;
}

.home .trailers .glide__arrow--left {
	left: -10%;
	background: transparent url(../images/icons/arrow_left.svg) no-repeat center;
	background-size: contain;
}

.trailers .glide__arrow--right {
	right: -10%;
	left: auto;
	background: transparent url(../images/icons/arrow_right.svg) no-repeat center;
	background-size: contain;
}

.home .right {
	z-index: 50;
	width: 70%;
}

.home .boxes .box {
	width: 15%;
	aspect-ratio: 1;
}

.home .boxes .box a {
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	align-items: stretch;
	width: 100%;
	height: 100%;
}

.home .boxes .box a:hover {
	opacity: 0.6;
}

.home .boxes .box .image {
	display: block;
	flex: 1;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 50%;
	background-color: #ffffff;
}

.home .boxes .box .image.full {
	background-size: contain;
}

.home .boxes .box .title-inline {
	padding: 10px 10px 10px 10px;
	background-color: var(--color-blue-dark);
	font-size: 24px;
	line-height: 28px;
	font-weight: 300;
	color: #ffffff;
	text-transform: uppercase;
	min-height: 56px;
	display: flex;
	align-content: center;
	justify-content: center;
	align-items: center;
}

.home .Title, .home .Subtitle, .home .Untertitel {
	max-width: 600px;
	margin: 0 auto 20px auto;
	text-align: center;
}
/*endregion*/

/*region tooltip*/
.tooltip {
	position: relative;
}

.tooltip-content {
	position: absolute;
	display: none;
	bottom: -5px;
	left: 100%;
	height: auto;
	width: 200px;
	z-index: 999;
	-webkit-box-shadow: 0 0 5px 2px rgba(0,0,0,0.2);
	-moz-box-shadow: 0 0 5px 2px rgba(0,0,0,0.2);
	box-shadow: 0 0 5px 2px rgba(0,0,0,0.2);
	margin-left: 15px;
}

.tooltip-content::before, .tooltip-content::after {
	content: '';
	position: absolute;
	display: block;
	z-index: -9;
	right: 100%;
	-webkit-transform: translateX(50%) rotate(45deg);
	-moz-transform: translateX(50%) rotate(45deg);
	-ms-transform: translateX(50%) rotate(45deg);
	-o-transform: translateX(50%) rotate(45deg);
	transform: translateX(50%) rotate(45deg);
	bottom: 10px;
	height: 15px;
	width: 15px;
	background-color: #ffffff;
	-webkit-box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 0 0 5px 2px rgba(0,0,0,0.1);
	box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1);
}

.tooltip-content::before {
	/*margin-right: -5px;
	margin-bottom: -2px;*/ margin-right: 0;
	margin-bottom: 0;
	/* height: 20px;*/ /* width: 20px;*/ box-shadow: none;
	z-index: 10;
	background-color: var(--color-blue-dark);
}

.tooltip-content.infos::after {
	background-color: var(--color-blue-dark);
}

.tooltip-content .image, .tooltip-content .text {
	position: absolute;
	bottom: 0;
	left: 0;
	height: auto;
	width: 100%;
	z-index: 999;
	background-color: #ffffff;
	background-size: 90% auto;
	background-position: center;
	background-repeat: no-repeat;
}

.tooltip-content .text {
	padding: 10px;
	background-color: var(--color-blue-dark);
	color: #ffffff;
	font-size: 12px;
	line-height: 22px;
	font-weight: 300;
}

.tooltip-content .text * {
	color: #ffffff;
}

.tooltip:hover .tooltip-content {
	display: block;
}
/*endregion*/

/*region introtext*/
article.introtext {
	position: relative;
	padding: 0 0 0 0;
	margin: 0 0 4% 0;
	display: block;
	clear: both;
}

article.introtext.category {
	margin-bottom: 4%;
}

article.introtext .textcontent {
	position: absolute;
	top: -50px;
	width: 33%;
	height: calc(100% + 50px);
	box-sizing: border-box;
	padding: 4% 4% 4% 8%;
	z-index: 999;
	display: flex;
	flex-direction: column;
	align-content: flex-start;
	justify-content: flex-end;
	align-items: flex-start;
}

#MJUContent.No-Titleimage article.introtext .textcontent {
	top: 0;
	height: 100%;
}

article.introtext .textcontent.red {
	background: var(--color-theme-red);
}

article.introtext .textcontent * {
	color: #ffffff;
	text-align: left;
	font-size: 20px;
	line-height: 28px;
}

article.introtext .textcontent .Introtitle {
	margin: 0 0 20px 0;
	font-size: 42px;
	line-height: 52px;
	font-weight: 600;
}

article.introtext .introtextcontainer {
	position: relative;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: 6% 6.5% 4% 40%;
}

article.introtext.category .introtextcontainer {
	padding: 4% 6.5% 2% 40%;
}

article.introtext .introtextcontainer * {
	text-align: left;
}

article.introtext .introtextcontainer .Title {
	font-family: "Figtree", Times, Times New Roman, serif;
	font-weight: 500;
}

article.introtext .introtextcontainer .Subtitle {
	margin: 0 0 15px 0;
}
/*endregion*/

/*region shorttext*/
article.shorttext {
	display: block;
	padding: 0 0 2% 0;
	margin: 0 auto;
	text-align: center;
	max-width: 850px;
}

article.shorttext .Title {
	color: var(--color-blue-dark);
}
/*endregion*/


/*region introbox*/
.introbox {
	display: block;
	width: 50%;
	max-width: 400px;
	padding: 0 3%;
	margin: 0 auto;
	text-align: center;
}
/*endregion*/

/*region portal*/
a.Othermenu, a.OthermenuActive {
	font-size: 13px;
	font-weight: normal;
	text-decoration: none;
	color: #FFFFFF;
	line-height: 20px;
	display: block;
	text-align: center;
	margin: 0;
	padding: 0;
	white-space: initial;
}

.Seomap {
	display: block;
	max-width: 980px;
	margin: 0 auto;
	padding: 30px 30px 60px 30px;
	text-align: left;
	border-top: 1px solid #FFFFFF;
}

.Seomap ul {
	display: block;
	position: relative;
	float: left;
	width: auto;
	height: auto;
	padding: 0;
	margin: 0 60px 0 0;
	text-align: left;
	list-style: none;
	white-space: initial;
}

.Seomap li {
	position: relative;
	display: list-item;
	float: none;
	width: auto;
	padding: 0;
	margin: 0;
	background: none;
	list-style: none;
	text-align: -webkit-match-parent;
	white-space: initial;
}

a.Seomenu {
	font-size: 12px;
	font-weight: normal;
	text-decoration: none;
	color: #FFFFFF;
	line-height: 18px;
	display: block;
	text-align: left;
	margin: 0;
	padding: 0;
}

.Seomap li:hover a.Seomenu, a.Seomenu:hover {
	text-decoration: none;
	color: #e6007e;
}

.Search {
	display: block;
	position: relative;
	padding: 0 0 0 10px;
	box-sizing: border-box;
}

.Search .Subtitle {
	float: left;
	margin: 0 20px 0 0;
	line-height: 34px;
}

.Search .FieldSearch {
	width: 250px;
	float: left;
	margin: 0 10px 5px 0;
}

.Search > * {
	float: left;
	margin: 0 10px 0 0;
	clear: none;
}

.Search > .CheckboxContainer, .Search > .ButtonImage {
	margin: 5px 10px 5px 10px;
}

.Search .FieldFilterContainer .FieldFilterClear {
	position: absolute;
	z-index: 100;
	top: 6px;
	right: 10px;
}

.Search .FieldFilterContainer .FieldFilterInput {
	padding: 6px 30px 6px 6px;
}

.BtLink {
	color: #FFFFFF;
	border: none;
	border-radius: 5px;
	background: none;
	background-color: #e6007e;
	font-size: 14px;
	font-weight: normal;
	line-height: 20px;
	padding: 8px 25px;
	text-transform: uppercase;
	-webkit-box-shadow: 5px 5px 10px 0 rgba(0,0,0,0.75);
	-moz-box-shadow: 5px 5px 10px 0 rgba(0,0,0,0.75);
	box-shadow: 5px 5px 10px 0 rgba(0,0,0,0.75);
}

.blue {
	color: var(--color-blue-dark) !important;
}

.Container {
	display: block;
	position: relative;
	width: auto;
	max-width: 1400px;
	padding: 0 20px;
	margin: 0 auto;
	overflow: visible;
	text-align: left;
	clear: both;
}

.Content {
	display: block;
	position: relative;
	left: auto;
	bottom: auto;
	right: auto;
	top: auto;
	margin: 0;
	padding: 0;
	overflow: visible;
	z-index: 20;
}

#MJUContent .portal > .content {
	width: 84%;
	margin: 0 auto;
}

#MJUContent .portal {
	position: relative;
}

article + .content.login {
	padding-top: 0;
}

/*.Header .Container {
    text-align: left;
    max-width: 100%;
    height: 100%;
}

.Header #MJUNavigation,
.Header .Titlebar {
    display: none;
}

.Header .rebate-firstorder {
    display: inline-block;
    position: absolute;
    z-index: 100;
    top: 50%;
    right: 350px;
    height: 125px;
    width: 125px;
    background-image: url(../images/bg/bg_rebate_firstorder.svg);
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: center;
    background-size: contain;
    box-sizing: border-box;
    -webkit-transform: rotate(20deg);
    -ms-transform: rotate(20deg);
    transform: rotate(20deg);
}*/

#SideNavigation {
	position: fixed;
	z-index: 1000;
	right: 0;
	top: 220px;
	height: auto;
	width: 45px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	text-align: right;
}

#SideNavigation ul {
	display: block;
	padding: 0;
	margin: 0;
	text-align: center;
	list-style: none;
}

#SideNavigation ul li {
	display: block;
	height: 40px;
	position: relative;
	cursor: pointer;
	text-align: left;
	margin: 5px 10px 5px 0;
	padding: 0;
	box-sizing: border-box;
}

#SideNavigation ul li a {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 40px;
	white-space: nowrap;
	cursor: pointer;
	box-sizing: border-box;
	width: auto;
	text-align: left;
	opacity: unset;
	color: var(--color-dark);
	box-sizing: border-box;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

#SideNavigation ul li:hover a {
	left: unset;
}

#SideNavigation .icon {
	display: inline-block !important;
	float: left !important;
	height: 40px !important;
	width: 40px !important;
	background-repeat: no-repeat;
	background-color: var(--color-dark);
	background-position: center;
	background-size: 50% auto;
	border-radius: 20px;
	border: none;
	pointer-events: all;
	margin: 0 !important;
	box-sizing: border-box;
}

#SideNavigation ul li:hover .icon {
	border: 4px solid #FFFFFF;
}

#SideNavigation .phone .icon {
	background-image: url(../images/icons/phone_white.svg);
	background-size: 50% auto;
}

#SideNavigation .contact .icon {
	background-image: url(../images/icons/contact_white.svg);
	background-size: 60% auto;
}

#SideNavigation .mail .icon {
	background-image: url(../images/icons/mail_white.svg);
	background-size: 50% auto;
}

#SideNavigation .text {
	display: inline-block;
	font-weight: 500;
	font-style: normal;
	font-size: 15px;
	line-height: 20px;
	text-decoration: none;
	color: inherit;
	padding: 10px 50px 10px 35px;
	margin: 0 0 0 -20px;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

#SideNavigation ul li:hover .text {
	background-color: var(--color-light);
}

.Container h3, h3, fieldset legend {
	display: block;
	font-size: 20px;
	line-height: 28px;
	font-weight: 600;
	margin: 0 0 15px 0;
	padding: 0;
	color: var(--color-blue-dark);
}

.Frontend .Subtitle, .Subtitle {
	display: block;
	font-size: 24px;
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
	color: var(--color-font);
	line-height: 30px;
	margin: 0 0 5px 0;
}

.Frontend .Title + .Textnormal, .Frontend .Subtitle + .Textnormal {
	margin-top: 20px;
}
/*endregion*/

/*region fancybox*/
.fancybox-container, .fancybox-container * {
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: none;
	transition: none;
	opacity: 1;
}

.fancybox-container {
	z-index: 99999 !important;
	transform: translateZ(0);
	-webkit-transform: translateZ(0);
	height: 100svh !important; /* Erzwingt die korrekte Höhe auf iOS */
	height: 100dvh !important;
	height: -webkit-fill-available;
	max-height: 100dvh; /* Nutzt den exakt sichtbaren Bereich unter iOS */
	max-height: -webkit-fill-available;
}

.fancybox-button {
	background: rgba(0, 0, 0, 1);
}

.fancybox-container .image {
	margin-bottom: 20px;
}

.fancybox-content .Title,
.fancybox-content .Title + .ref {
	font-size: 22px;
	font-weight: 900;
	line-height: 1.35;
	color: var(--rd-blue);
	text-transform: none;
}

.fancybox-content .loginform {
	padding: 20px;
}

.fancybox-close-small {
	width: 50px;
	height: 50px;
	margin: 0;
	padding: 0 !important;
	opacity: 1;
	display: block;
	background: rgba(0, 0, 0, 0);
	/* background: transparent url(../images/icons/close_black.svg) no-repeat center; */ background-size: contain;
}

.fancybox-bg {
	background: rgba(30, 30, 30, 0.75);
}

.fancybox-container fieldset legend {
	margin: 0 0 10px 0;
}

.fancybox-infobar {
	color: #FFFFFF;
}

.fancybox-button, .fancybox-button > div, .fancybox-button:visited, .fancybox-button:visited > div, .fancybox-button:link, .fancybox-button:link > div {
	color: #FFFFFF;
}

.fancybox-container table, .fancybox-container td, .fancybox-container th, .fancybox-container p, .fancybox-container div, .fancybox-container li, .fancybox-container a, .fancybox-container dl, .fancybox-container dt, .fancybox-container dd, .fancybox-container label {
	font-family: "Figtree", Arial, Helvetica, Geneva, Tahoma, Verdana, sans-serif;
	font-size: 16px;
	line-height: 1.44;
	text-align: left;
}

.fancybox-container li::marker {
	font-size: 12px;
	line-height: 12px;
}

.fancybox-container .Error {
	padding-right: 20px;
}

.fancybox-container fieldset {
	padding: 0 0 3% 0;
}

.fancybox-container .Button {
	display: inline-block;
	margin: 0 30px 0 0;
	font-style: normal !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-decoration: none;
	border-radius: 26px !important;
	padding: 15px 32px !important;
	border: none;
	background-color: var(--color-blue-dark);
	background-image: none;
}

.fancybox-container .Haupttitel {
	color: var(--color-dark);
	font-size: 32px;
	line-height: 42px;
	margin: 30px 0 20px 0;
}

.fancybox-container ul.Downloads, .fancybox-container ul.Links {
	display: block;
	width: 100%;
	margin: 15px 0 0 0;
	padding: 0;
	list-style-type: none;
	list-style-image: none;
}

.fancybox-container .detailimage {
	float: right;
	width: auto;
	display: block;
	max-width: 50%;
	margin: 0 0 5% 5%;
}

.fancybox-container article.standard + .toggle {
	margin-top: 5%;
}

.fancybox-slide {
	text-align: center !important;
}

#paypal-button-container {
	min-height: 230px;
}

.paypal-button {
	border-radius: 30px;
}

.box-content {
	max-width: 1080px !important;
	width: 96%;
}

.box-content.dashboard {
	background-color: var(--color-blue-dark);
	border: none;
}

.box-content.dashboard .Title {
	margin: 0 0 2% 0;
	text-align: left;
	color: #ffffff;
}

.box-content.dashboard .Button {
	background-color: var(--color-blue-light);
}

.box-content #images .image h3 {
	display: block;
	margin: 0 0 5px 0;
	font-weight: 500;
}

.box-content #images .image .Trailerimage {
	width: 100%;
	height: 120px;
	padding-bottom: 0;
	border-radius: 0;
}

#images .image .FieldFile, #images .image .FieldFileIcon {
	background-image: url(../images/icons/folder_blue_dark.svg);
	background-size: 25px auto;
}

#images .image .FieldFile:hover, #images .image .FieldFileIcon:hover {
	background-image: url(../images/icons/folder_open_blue_dark.svg);
}

#images .image .FieldFile input[type="text"], #images .image .FieldFileIcon input[type="text"] {
	height: 100%;
}

input[type='checkbox']:checked + label::before,
input[type='checkbox']:not(:checked) + label::before,
input[type='radio']:checked + label::before,
input[type='radio']:not(:checked) + label::before {
	width: 20px;
	height: 20px;
	background: #FFFFFF url(../images/input/checkbox.svg) no-repeat center;
}

input[type='checkbox']:hover  + label::before,
input[type='radio']:hover  + label::before {
	background: #FFFFFF url(../images/input/checkbox_active.svg) no-repeat center;
}

input[type='checkbox']:checked  + label::before,
input[type='radio']:checked  + label::before {
	background: #FFFFFF url(../images/input/checkbox_active.svg) no-repeat center;
}

.Duty {
	color: var(--color-font) !important;
}
/*endregion*/

/*region overlay*/
.Overlay {
	margin: 40px;
	width: 96%;
	max-width: 900px !important;
}

.Content .Overlay, .Content .Overlay + .shorttext {
	max-width: 100% !important;
	margin: 40px;
	width: 96%;
}

.Overlay .More {
	display: block;
	width: 150px;
	font-weight: 800;
	font-style: normal;
	font-size: 16px;
	text-decoration: none;
	color: #1e405a;
	line-height: 22px;
	text-align: left;
	margin: 2px 0 0 0;
}
.Overlay .More:hover {
	text-decoration: none;
	color: #8e9fac;
}
.Overlay .More:before {
	content: "> ";
}

.Overlay .Headline {
	display: block;
	font-size: 16px;
	font-weight: 800;
	font-style: normal;
	text-decoration: none;
	color: var(--color-blue-dark);
	line-height: 22px;
	margin: 0 0 0 0;
}

.Overlay .Address, .Overlay .Opening {
	display: block;
	float: left;
	width: 41%;
	margin: 0 4% 0 0;
}

.Overlay .Servicepartner {
	display: block;
	clear: none;
	float: none;
	margin: 0 5% 0 0;
}

.Overlay .ServicePoint .text {
	width: 90%;
}

.Overlay .Booking247partner {
	clear: right;
	float: left;
	margin: 0 5% 0 0;
}

.Overlay .Trailers {
	display: block;
	width: 100%;
	margin: 0 0 4% 0;
}

.Overlay .TrailersSelect,
.Overlay .DatesSelect,
.Overlay .LocationsSelect {
	display: flex;
	width: auto;
	margin: 0 0 2% 0;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: flex-start;
	justify-content: flex-start;
	align-items: flex-start;
}

.Overlay .DatesSelect {
	margin: 0;
}

.Overlay .Trailers .Trailer, .Overlay .TrailersSelect .Trailer, .Overlay .Trailers .Icon, .Overlay .TrailersSelect .Icon, .Overlay .DatesSelect .ReservationDate, .Overlay .Locations .Location, .Overlay .LocationsSelect .Location, .Overlay .Locations .Icon, .Overlay .LocationsSelect .Icon {
	display: inline-block;
	width: 13%;
	margin: 2% 2% 0 0;
	padding: 11% 0 2% 0;
	font-size: 14px;
	font-weight: 800;
	font-style: normal;
	text-decoration: none;
	color: var(--color-blue-dark);
	line-height: 20px;
	text-align: center;
	background: transparent url(../images/blank.gif) no-repeat top center;
	background-size: contain;
	box-sizing: border-box;
}

.Overlay .TrailersSelect .Trailer, .Overlay .TrailersSelect .Icon, .Overlay .DatesSelect .ReservationDate, .Overlay .LocationsSelect .Location, .Overlay .LocationsSelect .Icon {
	width: 13%;
	padding: 13% 0 2% 0;
	text-align: center;
	cursor: pointer;
}

.Overlay .LocationsSelect .Location, .Overlay .LocationsSelect .Icon {
	width: 30%;
}

.Overlay .DatesSelect .ReservationDate {
	width: 23%;
}

.Overlay .Trailers .Trailer, .Overlay .TrailersSelect .Trailer, .Overlay .DatesSelect .ReservationDate, .Overlay .Locations .Location, .Overlay .LocationsSelect .Location {
	padding: 0;
}

.Overlay .Trailers .Trailer, .Overlay .TrailersSelect .Trailer, .Overlay .Locations .Location, .Overlay .LocationsSelect .Location {
	position: relative;
}

.Overlay .DatesSelect .ReservationDate {
	margin: 2% 2% 0 0;
}

.Overlay .Trailers .Trailer .Icon, .Overlay .TrailersSelect .Trailer .Icon, .Overlay .Locations .Location .Icon, .Overlay .LocationsSelect .Location .Icon {
	width: 100%;
	padding-top: 60%;
}

.Overlay .Locations .Location .Icon, .Overlay .LocationsSelect .Location .Icon {
	width: 100%;
	padding-top: 25%;
}

.Overlay .Trailers .Trailer label, .Overlay .TrailersSelect .Trailer label, .Overlay .Locations .Location label, .Overlay .LocationsSelect .Location label {
	padding: 0;
	text-align: center;
	font-size: 14px;
	line-height: 20px;
}

.Overlay .Trailers .Trailer .info, .Overlay .TrailersSelect .Trailer .info {
	position: absolute;
	top: 0;
	right: 0;
	width: 25px;
	height: 25px;
	margin: -5px -5px 0 0;
	background-color: rgba(255, 255, 255, 0.8);
	background-image: url("../images/icons/info_blue_dark.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	border-radius: 50%;
	z-index: 200;
}

.Overlay .DatesSelect .ReservationDate label {
	padding: 5% 10%;
	text-align: center;
	font-size: 14px;
	line-height: 18px;
	color: #FFFFFF;
	background-color: var(--color-blue-light);
	border-radius: 5px;
}

.Overlay .Trailers .Trailer label:hover, .Overlay .TrailersSelect .Trailer label:hover, .Overlay .DatesSelect .ReservationDate label:hover, .calendar_views .calendar_view label:hover, .Overlay .Locations .Location label:hover, .Overlay .LocationsSelect .Location label:hover {
	opacity: 0.5;
}

.Overlay .Trailers .Trailer label::before, .Overlay .TrailersSelect .Trailer label::before, .Overlay .DatesSelect .ReservationDate label::before, .calendar_views .calendar_view label::before, .Overlay .Locations .Location label::before, .Overlay .LocationsSelect .Location label::before {
	visibility: hidden;
	display: none;
	width: 0;
	height: 0;
}

.Overlay .Trailers .Trailer input[type="radio"]:checked + label span, .Overlay .TrailersSelect .Trailer input[type="radio"]:checked + label span, .Overlay .DatesSelect .ReservationDate input[type="radio"]:checked + label, .Overlay .Locations .Location input[type="radio"]:checked + label span, .Overlay .LocationsSelect .Location input[type="radio"]:checked + label span {
	opacity: 0.5;
	position: relative;
	z-index: 50;
}

.Overlay .DatesSelect .ReservationDate input[type="radio"]:checked + label {
	/*background-color: #CCCCCC;*/ background-color: var(--color-theme-black-50);
	opacity: 1;
}

.Overlay .Trailers .Trailer input[type="radio"]:checked + label::before, .Overlay .TrailersSelect .Trailer input[type="radio"]:checked + label::before, .Overlay .DatesSelect .ReservationDate input[type="radio"]:checked + label::before, .calendar_views input[type="radio"]:checked + label::before, .Overlay .Locations .Location input[type="radio"]:checked + label::before, .Overlay .LocationsSelect .Location input[type="radio"]:checked + label::before {
	display: inline-block;
	background: transparent url(../images/icons/check_blue.svg) no-repeat center;
	background-size: 50px auto;
	position: absolute;
	z-index: 100;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	visibility: visible;
	border: none;
	box-shadow: none;
	margin: 0;
}

.Overlay .DatesSelect .ReservationDate input[type="radio"]:disabled + label {
	background-color: var(--color-blue-light);
	cursor: not-allowed;
	opacity: 0.4;
	position: relative;
	overflow: hidden;
}

.Overlay .DatesSelect .ReservationDate input[type="radio"]:disabled + label:before {
	content: " ";
	display: block;
	visibility: visible;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 550px;
	height: 550px;
	border: none;
	background: none;
	transform: rotate(-29deg);
	border-top: 3px solid var(--color-dark);
	border-radius: 0;
	opacity: 1;
}
.Overlay .DatesSelect .ReservationDate input[type="radio"]:disabled:hover + label:before {
	background: none;
	box-shadow: none;
}

.Overlay .Trailers .Icon img, .Overlay .TrailersSelect .Icon img {
	display: inline-block;
	float: left;
	width: 100px;
	height: auto;
	max-height: 70px;
	margin: -25px 30px -25px 0;
}

.Overlay .Contact {
	display: block;
	float: right;
	width: 51%;
	margin: 0 4% 4% 0;
}

.Overlay .Infos {
	display: block;
	float: right;
	width: 30%;
	margin: 0 0 3% 5%;
}

.Overlay .Images {
	display: block;
	margin: 0 0 20px 0;
}

.Overlay .Offeror {
	display: block;
	margin: 0 5px 20px 5px;
}

.Overlay .Offeror a, .Overlay .Address a {
	color: #1e405a;
}

.Overlay table {
	border-collapse: collapse;
}

.Overlay .Gallery {
	display: block;
	float: left;
	overflow: hidden;
	margin: 5px;
	width: 113px;
	height: auto;
	max-height: 84px;
	padding: 0;
	background-color: #ffffff;
	border: 1px solid #999999;
}
.Overlay .Gallery:hover {
	text-decoration: none;
}
.Overlay .Gallery img, .Overlay .Gallery:hover img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	text-decoration: none;
}

.Overlay .Gallery:hover img {
	-moz-opacity: 0.7;
	opacity: 0.7;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0.7)";
}

.Overlay .Gallery.First {
	display: block;
	float: none;
	width: auto;
	height: auto;
	max-height: initial;
	margin-top: 0;
}

.Overlay .Header {
	display: block;
	position: relative;
	margin: -40px -40px 20px -40px;
	padding: 0;
	width: auto;
	height: 100px;
	background: none;
	clear: both;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

.Overlay .Header .Bar {
	display: block;
	position: absolute;
	z-index: 250;
	top: 20px;
	right: 50%;
	width: 50%;
	height: 63px;
	margin: 0 310px 0 0;
	overflow: hidden;
	background: transparent url(../images/bar.png) repeat-x center;
	background-size: auto 63px;
}

.Overlay .Header .Slogan {
	display: inline-block;
	position: absolute;
	z-index: 250;
	top: 57px;
	right: 50%;
	width: auto;
	height: 20px;
	margin: 0 100px 0 0;
	font-size: 18px;
	font-weight: 800;
	font-style: normal;
	text-decoration: none;
	color: var(--color-blue-dark);
	line-height: 20px;
	letter-spacing: 0.3px;
	margin: 0 145px 0 0;
}

.Overlay .Header .Logo {
	display: block;
	position: absolute;
	z-index: 200;
	top: 0;
	left: auto;
	right: 0;
	bottom: 0;
	text-align: right;
	height: auto;
	width: 142px;
	margin: 20px 30px;
	padding: 0;
}

.round-button {
	position: relative;
	display: inline-block;
	margin: 5px 10px 30px 10px;
	padding: 0;
	height: 40px;
	width: 40px;
	background-color: var(--color-blue-light);
	background-image: url('../images/icons/request_white.svg');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 80% auto;
	border-radius: 50%;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
	cursor: pointer;
}

.round-button .title, .round-button .text {
	position: absolute;
	top: 100%;
	padding: 5px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
	white-space: nowrap;
}

.round-button.phone {
	background-image: url('../images/icons/phone_white.svg');
}
.round-button.email {
	background-image: url('../images/icons/mail_white.svg');
	background-size: 24px auto;
}
.round-button.request {
	background-image: url('../images/icons/request_white.svg');
}
.round-button.purchase {
	background-image: url('../images/icons/basket_white.svg');
	background-size: 24px auto;
}
.round-button.booking {
	background-image: url('../images/icons/24-7_white.svg');
	background-size: 30px auto;
}
.round-button.route {
	background-image: url('../images/icons/route_white.svg');
}
.round-button.web {
	background-image: url('../images/icons/web_white.svg');
}

.round-button:hover {
	background-color: var(--color-blue-dark);
}

.Overlay .round-button.Desktop {
	display: inline-block !important;
}

.Overlay .Openings table, .Overlay .Openings td, .Overlay .Openings th, .Overlay .Openings p, .Overlay .Openings div, .Overlay .Openings li, .Overlay .Openings a, .Overlay .Openings label {
	font-family: "Figtree", Arial, Helvetica, Geneva, Tahoma, Verdana, sans-serif;
	font-size: 16px;
	line-height: 1.44;
	text-align: left;
}

.Overlay .images {
	display: flex;
	flex-wrap: wrap;
	margin: -5px -5px -5px -5px;
}

.Overlay .images .image {
	width: 40%;
	aspect-ratio: 1.5;
	margin: 0 1% 1% 0;
	border: 1px solid #dedede;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
/*endregion*/

/*region loader*/
.loader_container {
	position: relative;
	width: 200px;
	height: 200px;
	margin: 0 auto;
}

.loader_container .loader {
	width: 100%;
	height: 100%;
	border: 16px solid #f3f3f3;
	border-top: 16px solid var(--color-blue-dark);
	border-radius: 50%;
	animation: spin 2s linear infinite;
	box-sizing: border-box;
}

.loader_container .text {
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	font-size: 20px;
}

@-webkit-keyframes spin {
	0% {
		-webkit-transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
	}
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

.lds-ring {
	display: inline-block;
	position: relative;
	width: 100%;
	height: 100%;
}

.lds-ring div {
	box-sizing: border-box;
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	border: 14px solid var(--color-blue-dark);
	border-radius: 50%;
	animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	border-color: var(--color-blue-dark) transparent transparent transparent;
}

.lds-ring div:nth-child(1) {
	animation-delay: -0.45s;
}

.lds-ring div:nth-child(2) {
	animation-delay: -0.3s;
}

.lds-ring div:nth-child(3) {
	animation-delay: -0.15s;
}

@keyframes lds-ring {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
/*endregion*/

/*region container*/
.Container .side .orange {
	width: 100%;
	height: 50%;
	background-color: #f28e43;
	position: relative;
}

.Container .side .orange .logo {
	position: absolute;
	width: 70%;
	height: 50%;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-image: url(../images/title.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.Container nav {
	margin: 0;
	vertical-align: top;
	display: inline-block;
	list-style: none;
}

.Container ul.menu {
	margin: 20px 0 0 0;
	padding: 0;
	display: inline-block;
	list-style: none;
	box-sizing: border-box;
}

.Container ul.menu li {
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	margin: 0 20px 0 0;
}

.Container ul.menu li a {
	display: inline-block;
	text-align: center;
	font-family: 'Figtree', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--color-dark);
	height: auto;
	margin: 0;
	padding: 5px 10px;
	opacity: 1;
	box-sizing: border-box;
}

.Container ul.menu li ul.submenu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	text-align: left;
	width: 250px;
	overflow: visible;
	margin: 0 0 0 10px;
	padding: 0;
}

.Container ul.menu li ul.submenu li {
	display: block;
	margin: 4px 0 0 0;
}

.Container ul.menu li:hover ul.submenu {
	display: block;
}

.Container ul.menu ul.submenu a {
	color: #ffffff;
	width: 100%;
	display: block;
	position: relative;
	background-color: var(--color-dark);
	margin: 0;
	height: auto;
	line-height: 20px;
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid #073370;
	padding: 15px 0;
}

.Container ul.menu ul.submenu a:last-of-type {
	border-bottom: 0;
}

.Container ul.menu ul.submenu a img {
	height: 20px;
	margin: 0 10px 0 25px;
	position: relative;
	top: -1px;
	vertical-align: middle;
	display: inline-block;
}

.Container ul.menu img {
	height: 30px;
	width: 30px;
	margin: 0 auto 5px auto;
	display: block;
}

.Container ul.menu a:hover, .Container ul.menu a:active, .Container ul.menu a.active {
	font-weight: 400;
	color: #FFFFFF;
	background-color: var(--color-dark);
}

.Container .four-columns {
	width: 100%;
	height: auto !important;
	display: flex;
	flex-wrap: wrap;
}

.Container .four-columns h2 {
	height: auto !important;
}

.Container.portal .content {
	width: 100%;
	/*padding: 20px 30px 20px 30px;*/ padding: 3%;
	box-sizing: border-box;
}

.Container.portal, .Container.login {
	padding: 0;
	position: relative;
}

.Container, .Container h4, .Container p, .Container ul, .Container ol, .Container div, .Container font, .Container label {
	color: #000000;
}

.Container h1, .Container h2, .Frontend .Title, .Title {
	display: block;
	margin: 0 0 5px 0;
	font-size: 32px;
	line-height: 40px;
	font-weight: 500;
	font-style: normal;
	text-decoration: none;
	color: var(--color-blue-dark);
	text-transform: uppercase;
}

.Container.privacy h2, .Container.imprint h2 {
	margin-bottom: 0;
	padding-top: 1em;
}

.Container.privacy h3, .Container.imprint h3 {
	margin-bottom: 0;
	padding-top: 0.5em;
}

.Container.privacy ul, .Container.imprint ul {
	font-size: 16px;
	line-height: 20px;
	padding-left: 20px;
}

.Container.privacy a, .Container.imprint a {
	color: #456594;
}

.Container.privacy a:hover, .Container.imprint a:hover {
	opacity: 0.6;
}

.Container.login form h3 {
	margin-top: 20px;
	margin-bottom: 10px;
}

.Container.login .two-columns {
	float: left;
	width: 50%;
	box-sizing: border-box;
}

.Container.login .two-columns:first-child {
	padding-right: 10%;
}

.Container.login input[type='submit'] {
	float: right;
	padding: 8px 0;
	width: 170px;
	text-transform: uppercase;
	font-size: 12px;
	background-color: #456594;
	color: #ffffff;
	border: 1px solid #8798b2;
	margin-bottom: 10px;
}

.Container .content.Logos {
	min-height: inherit;
	margin: 4% 0 0 0;
	padding: 0;
}

.Container .glide--logos {
	margin: 0 auto 0 auto;
	height: 150px;
	padding: 0 6%;
	box-sizing: border-box;
	width: 85%;
}

.Container .glide--logos .glide__wrapper {
	height: 130px !important;
}

.Container .glide--logos .glide__arrows {
	max-width: 800px;
	height: 0;
	margin-top: -17px;
}

.Container .glide--logos .glide__background, .Container .glide--logos .link {
	background-size: contain;
	background-position: center;
	margin: 10px 30px;
	width: auto !important;
	height: 125px !important;
	position: absolute;
	z-index: 100;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.Container .glide--logos .link {
	cursor: pointer;
	z-index: 150;
}

.Container .glide--logos .glide__arrow {
	background-size: 25px 35px !important;
	width: 25px;
	height: 35px;
	opacity: 0.2;
	margin: 0;
}

.Container .glide--logos .glide__arrow.prev {
	background-image: url(../images/icons/pull_left_grey.svg) !important;
}

.Container .glide--logos .glide__arrow.next {
	background-image: url(../images/icons/pull_right_grey.svg) !important;
}

.Container .glide--logos .glide__slide {
	height: 130px !important;
	box-sizing: border-box;
	width: 10%;
}

.Container li {
	margin-bottom: 0.5em;
}

.Container .content.map {
	padding: 0;
}

.Container .OrganizationsList .organization, .Container .PersonsList .organization {
	display: block;
	vertical-align: middle;
	width: 100%;
	margin: 3% 0;
	padding: 0;
	font-weight: normal;
	font-style: normal;
	font-size: 14pt;
	line-height: 20px;
	text-decoration: none;
	color: #58585a;
}

.Container .OrganizationsList .organization h3, .Container .PersonsList .organization h3 {
	font-size: 16px;
	line-height: 22px;
	font-weight: 500;
	margin: 0 0 5px 0;
}
.Container .OrganizationsList .organization h4, .Container .PersonsList .organization h4 {
	font-weight: 500;
}

.Container .OrganizationsList .organization .text {
	display: none;
}

.Container .OrganizationsList .organization h4, .Container .OrganizationsList .organization .text {
	margin: 0 0 0 25px;
}
.Container .OrganizationsList .organization .text, .Container .PersonsList .organization .text, .Container .OrganizationsList .organization a, .Container .PersonsList .organization a, .Container .OrganizationsList .organization .text div, .Container .PersonsList .organization .text div {
	font-size: 13px;
	line-height: 18px;
}

.Container .OrganizationsList .organization a, .Container .PersonsList .organization a {
	text-decoration: underline;
	display: block;
}

.Container .PersonsList .organization a {
	margin: -5px 0 10px 0;
}

.Container .OrganizationsList .organization h3.legend {
	padding: 0 0 0 25px;
	background-position: left top;
	margin: 0 0 0 0;
}

.Container .paging {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: flex-start;
	justify-content: center;
	align-items: center;
	position: relative;
	text-align: center;
	list-style: none;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.Container .paging form {
	display: inline-block;
	box-sizing: border-box;
	width: auto;
}

.Container .paging > li {
	display: inline-block;
	box-sizing: border-box;
	min-width: 35px;
	padding: 0;
	line-height: 30px;
	font-size: 16px;
	font-weight: 800;
	text-align: center;
	margin-left: -1px;
	border: 1px solid #999999;
	background-color: #FFFFFF;
}

.Container .paging a {
	color: #000000;
	min-width: 35px;
	margin: 0;
	padding: 0 10px;
	line-height: 30px;
	font-size: 16px;
	font-weight: 800;
	text-align: center;
	display: inline-block;
	box-sizing: border-box;
	text-decoration: none;
}

.Container .paging li:hover {
	background-color: var(--color-dark);
}

.Container .paging a:hover {
	text-decoration: none;
	color: #ffffff;
}

.Container .paging li.Current {
	color: #ffffff;
	background-color: var(--color-dark);
}
/*endregion*/

/*region content layout*/
.Columns:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.ie7 .Columns {
	zoom: 1;
} /* IE7 */

.Col50 {
	position: relative;
	display: inline-block;
	float: left;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	width: 50%;
	vertical-align: top;
	background-color: #efefef;
	padding: 2% 3%;
}

.Col50.Left, .Col50.Right {
	width: 48%;
}

.Col50.Left {
	margin: 0 2% 2% 0;
}

.Col50.Right {
	margin: 0 0 2% 2%;
}

.Flex {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	align-content: flex-start;
	justify-content: flex-start;
	align-items: normal;
}

.NoFloat {
	float: none !important;
}

.NoMargins {
	margin: 0 !important;
}

.NoPaddings {
	padding: 0 !important;
}

.MarginBottom10 {
	margin-bottom: 10px;
}

.MarginBottom {
	margin-bottom: 1.5%;
}

.MarginBottomDouble {
	margin-bottom: 3%;
}

.MarginCentered {
	display: inline-block;
	margin: 0 auto;
}

.Outside {
	left: 100% !important;
}

.person {
	display: inline-block;
	font-size: 10px;
	width: 22%;
	height: auto;
	box-sizing: border-box;
	font-family: 'Figtree';
	font-weight: 500;
	vertical-align: top;
	position: relative;
	padding-bottom: 20px;
	margin: 0 4% 4% 0;
}

.four-columns .person:nth-child(4n + 0) {
	margin: 0 0 4% 0;
}

.person img {
	width: 100%;
	padding-bottom: 4pt;
}

.person p {
	padding-top: 2pt;
	text-align: left;
}

.person .place {
	font-size: 13px;
	line-height: 120%;
	margin-bottom: 10px;
}

.person .position {
	color: #f18e43;
	font-size: 13px;
	line-height: 120%;
	font-style: italic;
	position: relative;
	margin-bottom: 10px;
	display: block;
}

.person .mail-icon {
	float: right;
	display: inline-block;
	width: 30px;
}

.person .mail-icon:hover {
	opacity: 0.7;
}

.person hr {
	position: absolute;
	width: 100%;
	bottom: 0;
	border: 2px solid rgba(109,104,104,0.5);
	clear: both;
	margin-bottom: 16px;
	box-sizing: border-box;
}
/*endregion*/

/*region login*/
.login {
	max-width: 1000px;
	margin: 0 auto;
}

.login .loginform {
	background-color: #ffffff;
	max-width: 500px;
	text-align: center;
	padding: 50px;
	margin: 0 auto 0 auto;
}

.login .loginform .floating-label {
	margin-bottom: 10px;
}

/*
.login .loginform input[type='text'],
.login .loginform input[type='password'] {
    width: 100%;
    margin-bottom: 10px;
    padding: 7px 15px;
    color: var(--color-blue-dark);
	border: 1px solid #dedede;
}

.login .loginform input[type='text']::placeholder,
.login .loginform input[type='password']::placeholder {
    color: #999999;
    font-style: italic;
}*/

.login .loginform input[type='submit'],
.login .loginform input[type='button'],
.login .loginform .Button {
	min-width: 240px;
	text-align: center;
	font-size: 18px;
	line-height: 22px;
	padding: 10px 0;
}
/*endregion*/

/*region dashboard*/
#dashboard {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	padding: 2% 2% 2% 2%;
}

.dashboard > .flex-row {
	align-items: stretch;
	gap: 20px;
}

.dashboard .grid-item {
	align-items: stretch;
	box-sizing: border-box;
	min-height: 280px;
	padding: 1vw 1vw 1vw 1vw;
	background-color: #ffffff;
}

.dashboard #profile .flex-row {
	align-items: center;
}

.dashboard #services, .dashboard #reservations {
	grid-column: 2 / 4;
}

.dashboard .grid-item.white {
	background-color: #ffffff;
}

.dashboard .grid-item.gray {
	background-color: var(--color-gray);
}

.dashboard .grid-item.blue {
	background-color: var(--color-blue-dark);
}

.dashboard .grid-item.blue * {
	color: #ffffff !important;
}

.dashboard .grid-item .title {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	padding: 10px 13px 10px 13px;
	background-color: var(--color-blue-light);
}

.dashboard .grid-item h3 {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	margin: 0 0 0 0;
	-ms-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	-o-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
	font-size: 21px;
	line-height: 25px;
	font-weight: 500;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 2px;
}

.dashboard .grid-item h3 img {
	display: inline-block;
	-o-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.dashboard .grid-item h4 {
	text-align: center;
	font-size: 18px;
	line-height: 22px;
	text-transform: uppercase;
	color: var(--color-blue-dark);
}

.dashboard.tenant .grid-item h4 {
	font-size: 22px;
	line-height: 26px;
}

.dashboard .grid-item.blue h4 {
	color: #ffffff;
}

.dashboard .grid-item .content {
	position: relative;
	justify-content: space-evenly;
	align-content: center;
	flex: 1;
	gap: 1vw;
}

.dashboard .grid-item .content.top {
	align-content: normal;
}

.dashboard .grid-item .content a.image {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	max-width: 150px;
	width: 47%;
	text-align: center;
}

.dashboard #services .content a.image {
	width: 23%;
}

.dashboard .grid-item .content a.image .background {
	width: 100px;
	height: 60px;
	background-repeat: no-repeat;
	background-size: auto 75%;
	background-position: center bottom;
}

.dashboard .grid-item .content a.image span {
	font-size: 16px;
	line-height: 22px;
	text-transform: uppercase;
	color: var(--color-app-light);
}

.dashboard .grid-item .content a.image span.count, .toggle h2 .count {
	position: absolute;
	right: -15px;
	top: -15px;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: content-box;
	min-width: 20px;
	aspect-ratio: 1;
	padding: 5px;
	background-color: darkred;
	border-radius: 50%;
	color: #ffffff;
	font-size: 16px;
	line-height: 16px;
	-o-transform: rotate(10deg);
	-ms-transform: rotate(10deg);
	-moz-transform: rotate(10deg);
	-webkit-transform: rotate(10deg);
	transform: rotate(10deg);
}

.dashboard .grid-item.reservations .content, .dashboard .grid-item.trailers .content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;
}

.dashboard .grid-item.reservations .content > .More, .dashboard .grid-item.trailers .content > .More {
	text-align: center;
	font-size: 18px;
	line-height: 22px;
	color: var(--color-blue-dark);
}

.dashboard .grid-item.reservations .content > .More::before, .dashboard .grid-item.trailers .content > .More::before {
	content: '� ';
	color: var(--color-blue-dark);
}

.dashboard .grid-item.trailers .content > .More, .dashboard .grid-item.trailers .content > .More::before {
	color: #ffffff;
}

.dashboard .grid-item .trailer {
	display: flex;
	/*justify-content: space-between;
	align-items: stretch;*/ align-content: flex-start;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 10px;
	margin: 2% 2%;
	width: 46%;
	box-sizing: border-box;
}

.dashboard .grid-item .trailer .image {
	box-sizing: border-box;
	width: 40%;
	max-width: 150px;
	height: auto;
	aspect-ratio: 16/9;
	/*
	height: 0;
	padding: 0 0 20% 0;*/ padding: 0;
	display: flex;
	margin: 0;
	border: 1px solid var(--color-blue-light);
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.dashboard .grid-item .trailer .info {
	display: block;
}

.dashboard .grid-item .trailer .name {
	margin: 0 0 5px 0;
	font-size: 16px;
	line-height: 20px;
	text-transform: uppercase;
	color: var(--color-blue-dark);
}

.dashboard .grid-item .trailer .Address {
	font-size: 13px;
	line-height: 18px;
}

.dashboard .grid-item .trailer .date {
	font-size: 14px;
	line-height: 20px;
	color: var(--color-blue-dark);
}

.dashboard .grid-item .trailer .tenant {
	font-size: 14px;
	line-height: 15px;
	color: var(--color-blue-dark);
}

.dashboard .grid-item.trailers .trailer .name, .dashboard .grid-item.trailers .trailer .date, .dashboard .grid-item.trailers .trailer .tenant {
	color: #ffffff;
}

.dashboard .grid-item .trailer .More {
	margin: 5px 0 0 0;
	font-size: 12px;
	line-height: 14px;
	font-weight: 800;
	color: var(--color-blue-light);
}

.dashboard .grid-item .trailer .More::before {
	content: '� ';
	font-size: 16px;
	color: var(--color-blue-light);
}

.dashboard:not(.grid) .content {
	padding: 3% 3% 3% 3%;
	background-color: #d6ecf6;
}

.dashboard #reservations.grid-item .trailer {
	width: 95%;
	gap: 20px;
}
.dashboard #reservations.grid-item .trailer:nth-child(4), .dashboard #reservations.grid-item .trailer:nth-child(5) {
	display: none;
}
/*.dashboard #trailers.grid-item .trailer .image {
	padding: 0 0 27% 0;
}*/

/*region Responsive 1600px*/
@media(max-width: 1600px) {
	.dashboard .grid-item .trailer {
		width: 95%;
		gap: 20px;
	}
	.dashboard .grid-item .trailer:nth-child(5), .dashboard .grid-item .trailer:nth-child(6) {
		display: none;
	}
	.dashboard .grid-item .trailer .image {
		width: 100%;
		max-width: 120px;
		/*height: 0;
		padding: 0 0 27% 0;*/;
	}
}
/*endregion*/

.fancybox-content {
	background-color: #FFFFFF !important;
	border-radius: 16px;
	box-shadow: none;
	margin: 0;
	max-width: 1160px !important;
	width: 96vw;
	padding: 3%;
}

.fancybox-container .toggle h2 .count {
	min-width: 15px;
}

.toggle h2 .count {
	position: relative;
	right: unset;
	top: unset;
	border: 1px solid #ffffff;
}

.toggle h2 .count:hover {
	background-color: #ffffff;
	color: darkred;
	border-color: darkred;
}

.dashboard .grid-item .buttons {
	width: 100%;
}

.dashboard .grid-item .buttons a {
	background-color: #e3e3e3;
	color: var(--color-app-dark);
}

#dashboard.tenant #reservations {
	grid-area: 1 / 1 / 3 / 3;
}

#dashboard.tenant #profile {
	grid-area: 1 / 3 / 1 / 4;
}

#dashboard.tenant #services {
	grid-area: 2 / 3 / 2 / 4;
}

#dashboard.tenant #reservations .reservation {
	max-width: 750px;
	margin: 2% auto;
}

#dashboard.tenant #reservations .reservation .image {
	float: right;
	max-width: 400px;
	width: 100%;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	margin: 0 0 20px 20px;
}

#dashboard.tenant #reservations .reservation .image::before {
	content: '';
	display: block;
	padding-top: 60%;
}

#dashboard.tenant #reservations .reservation .action {
	margin-top: 10px;
}

#dashboard.tenant .timer {
	box-sizing: border-box;
	min-width: 300px;
	width: fit-content;
	margin: 0.5% 0 2% 0;
	padding: 10px 10px 10px 10px;
	/*background: var(--color-blue-dark);*/ background: var(--color-blue-light);
	text-align: center;
	/*background: linear-gradient(177deg, var(--color-blue-light) 0%, var(--color-blue-dark) 100%);*/;
}

#dashboard.tenant .timer.compact {
	min-width: unset;
}

#dashboard.tenant .timer.highlight {
	background-color: #dc143c;
}

#dashboard.tenant .timer * {
	color: #ffffff;
}

#dashboard.tenant .timer .countdown-section {
	display: inline-block;
	padding: 0;
	float: none;
	width: auto;
	text-align: center;
}

#dashboard.tenant .timer .countdown-section + .countdown-section {
	margin-left: 20px;
}

#dashboard.tenant .timer .countdown-section .countdown-amount {
	display: block;
	font-size: 30px;
	line-height: 36px;
	font-weight: 800;
}

#dashboard.tenant .timer .countdown-section .countdown-period {
	font-size: 16px;
	line-height: 16px;
}

#dashboard.tenant #reservations .reservation .action {
	clear: both;
}

#dashboard.tenant #reservations .reservation #Button,
#dashboard.tenant #reservations .reservation .Button {
	font-size: 24px;
	line-height: 28px;
	font-weight: 300;
}

#dashboard.tenant #reservations .reservation.overview .Button {
	font-size: 18px;
	line-height: 22px;
}

#dashboard.tenant #reservations .reservation .Button.green {
	background-color: #00ff00;
}

#dashboard.tenant #reservations .reservation .Button.red {
	background-color: #ff0000;
}

#dashboard.tenant #reservations .reservation .action .Button {
	cursor: default;
}

#dashboard.tenant #reservations .reservation .action input[type="submit"] {
	cursor: pointer;
}

#dashboard.tenant #reservations .reservation .action .Button:hover {
	opacity: 1;
}

#dashboard.tenant #reservations .reservation .action input[type="submit"]:hover {
	opacity: 0.5;
}

#dashboard.tenant #reservations .reservation .Button + .loading {
	margin-left: 15px !important;
}

#dashboard.tenant #reservations .reservation .loading {
	width: 40px;
}

#dashboard.tenant #reservations .reservation .location {
	margin-bottom: 20px;
}

#dashboard.tenant #reservations .reservation .Success .loading {
	margin: 0 0 0 20px;
	float: right;
	width: 50px;
}

#dashboard.tenant .Information, #dashboard.tenant .Error, #dashboard.tenant .Warning, #dashboard.tenant .Success {
	font-size: 18px !important;
	line-height: 26px !important;
	font-weight: bold;
	padding: 20px;
}

#dashboard.tenant .Information *, #dashboard.tenant .Error *, #dashboard.tenant .Warning *, #dashboard.tenant .Success * {
	font-size: 18px !important;
	line-height: 26px !important;
	font-weight: bold;
}
#dashboard.tenant .Information .Textnormal, #dashboard.tenant .Error .Textnormal, #dashboard.tenant .Warning .Textnormal, #dashboard.tenant .Success .Textnormal {
	margin: 0;
}
#dashboard.tenant #Error {
	margin-bottom: 20px;
}

img.reservation-successfully {
	margin: -5px 10px 10px 0;
	float: left;
	max-width: 50px;
}

.dashboard .Title {
	font-size: 21px;
	line-height: 26px;
	text-align: center;
	letter-spacing: 0;
}

.dashboard .box {
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	width: 30%;
	padding: 25% 0 0 0;
	text-align: center;
	background-color: var(--color-app-dark);
	height: 0;
	margin: 1% 1% 1% 1%;
}

.dashboard .box h1 {
	position: absolute;
	width: 87%;
	top: 15%;
	left: 50%;
	color: #ffffff;
	border-bottom: none;
	transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.dashboard .box h3 {
	position: absolute;
	width: 85%;
	/*top: 45%;*/ top: 40%;
	left: 50%;
	transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	text-transform: uppercase;
	color: #ffffff;
	font-size: 20px;
	line-height: 26px;
}

.dashboard .box.darkgray {
	background-color: #6c6867 !important;
}

.dashboard .box.darkgray h3 {
	color: #ffffff;
}

.dashboard .box img {
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	max-width: 100px;
	height: 20%;
	margin: 10px 0 20px 0;
}

.dashboard .box .buttons {
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	width: 85%;
	height: auto;
}

.dashboard .buttons a {
	display: block;
	position: relative;
	box-sizing: border-box;
	width: 100%;
	padding: 8px;
	text-align: left;
	font-size: 20px;
	line-height: 26px;
}

.dashboard .buttons a + a {
	margin-top: 10px;
}

.dashboard .buttons a:hover {
	opacity: 0.6;
	text-decoration: none;
}

.dashboard .buttons .add, .Container.dashboard .buttons .delete {
	margin-bottom: 5px;
}

.dashboard .buttons a.edit {
	text-align: center;
	text-transform: uppercase;
}

.dashboard .buttons .count {
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	box-sizing: border-box;
	margin: -15px -20px 0 0;
	padding: 10px 15px;
	text-align: center;
	border-radius: 50%;
	border: 1px solid #ffffff;
	background: darkred;
	font-size: 14px;
	text-decoration: inherit;
	font-weight: bold;
	font-style: inherit;
	color: #FFFFFF;
	line-height: 20px;
	transform: rotate(10deg);
	-webkit-transform: rotate(10deg);
	-moz-transform: rotate(10deg);
	-ms-transform: rotate(10deg);
	-o-transform: rotate(10deg);
}

.dashboard .Profileimage {
	width: 100%;
	height: auto;
	max-height: none;
	aspect-ratio: 1;
	padding: 0;
	border: 1px solid #dedede;
	border-radius: 50%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.dashboard .Profileimage img {
	top: 0;
	overflow: hidden;
	margin: 0;
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	max-width: none;
	max-height: 100%;
	box-sizing: border-box;
}

.dashboard .greetings {
	position: absolute;
	width: 85%;
	top: 75%;
	left: 50%;
	padding: 0;
	margin: 0;
	font-size: 20px;
	line-height: 26px;
	color: #ffffff;
	transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.dashboard .box.with-buttons h1 {
	top: 7%;
}

.dashboard .box.with-buttons .Profileimage {
	top: 22%;
}

.dashboard .box.with-buttons .greetings {
	top: 65%;
}

.dashboard .TrailersList .Trailer .image {
	width: 40%;
	height: auto;
	padding: 0;
	aspect-ratio: 16 / 9;
	background-size: cover;
}

.dashboard .TrailersList .Trailer .info {
	width: 60%;
}

.dashboard .LocationsList .list.columns-6 .row {
	grid-template-columns: 0.6fr 1.4fr 0.6fr 1.4fr 1.2fr 0.2fr;
}

.Frontend table.datatable {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	border: 1px solid #cccccc;
	border-collapse: collapse;
	border-spacing: 0;
}

.Frontend table.datatable td, .Frontend table.datatable th {
	vertical-align: top;
	text-align: center;
	border: none;
	background: none;
	padding: 7px 10px;
	border: 1px solid #cccccc;
	line-height: 20px;
	font-size: 15px;
}

.Frontend table.datatable th {
	vertical-align: middle;
	font-weight: 500;
	background-color: #134890;
	color: #FFFFFF;
	padding: 7px 10px;
}

.Frontend table.datatable td {
	white-space: nowrap;
}

.Frontend table.datatable td.text {
	text-align: left;
	white-space: normal;
}

.Frontend table.datatable td:first-child {
	vertical-align: middle;
	font-weight: 500;
	background-color: #2199d1;
	color: #FFFFFF;
	padding: 7px 10px;
}

.Information, .Error, .Warning, .Success {
	padding: 20px;
}

.Frontend .Information, .Frontend .Error, .Frontend .Warning, .Frontend .Success {
	font-size: 16px !important;
	line-height: 22px !important;
}

.Frontend .Alarm {
	border-left: 5px #B4140A solid !important;
	background: rgba(220, 20, 60, 0.15);
}
/*endregion*/

/*region sidebar*/
#sidebar {
	width: 20%;
	box-sizing: border-box;
	padding: 3% 3% 3% 3%;
	background-color: var(--color-blue-light);
}

#sidebar * {
	color: #ffffff;
}

#sidebar .Title {
	text-align: left;
	font-size: 21px;
	line-height: 26px;
	letter-spacing: unset;
}

#sidebar .calendar_views .calendar_view {
	display: inline-block;
	width: 30%;
	text-align: center;
}

#sidebar .calendar_views .calendar_view label {
	padding: 0 0 0 0;
}

#sidebar .calendar_views .Icon {
	display: block;
	width: 100%;
	padding-top: 60%;
	margin-bottom: 5px;
	background-image: url('../images/icons/boxed/calendar_white.svg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

#sidebar .calendar_views .Icon.week {
	background-image: url('../images/icons/boxed/calendar_week_white.svg');
}

#sidebar .calendar_views .Icon.trailers {
	background-image: url('../images/icons/boxed/trailer_luggage_white.svg');
}

#sidebar input.Search {
	color: var(--color-font);
}

#sidebar .Button.Search {
	background-image: url(../images/icons/search_white.svg);
	margin: 0 0 0 10px;
}

#sidebar summary {
	position: relative;
	padding-right: 30px;
	list-style: none;
	font-size: 18px;
	line-height: 24px;
	text-align: left;
	color: #ffffff;
	cursor: pointer;
	text-transform: uppercase;
	border-bottom: 2px solid #ffffff;
	-o-transition: margin 200ms ease-out;
	-ms-transition: margin 200ms ease-out;
	-moz-transition: margin 200ms ease-out;
	-webkit-transition: margin 200ms ease-out;
	transition: margin 200ms ease-out;
}

#sidebar summary::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 30px;
	height: 100%;
	background-image: url("../images/icons/arrow_down_white.svg");
	background-repeat: no-repeat;
	background-position: center center;
	-o-transition: transform 0.4s ease-in-out;
	-ms-transition: transform 0.4s ease-in-out;
	-moz-transition: transform 0.4s ease-in-out;
	-webkit-transition: transform 0.4s ease-in-out;
	transition: transform 0.4s ease-in-out;
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

#sidebar details[open] summary {
	margin-bottom: 10px;
}

#sidebar details[open] summary::after {
	-o-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

#sidebar details summary::-webkit-details-marker {
	display:none;
}

#sidebar .CheckboxList .CheckboxContainer {
	width: 100%;
	float: none;
}

#sidebar .CheckboxContainer {
	display: block;
}
/*endregion*/

/*region list*/
.list {
	margin: 20px 0 0 0;
}

.list .row {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
	align-items: center;
	padding: 10px 0;
}

.list.columns-4 .row {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}

.list.columns-5 .row {
	grid-template-columns: 1fr 1fr 1fr 1fr 0.2fr;
}

.list.columns-6 .row {
	grid-template-columns: 0.2fr 1fr 1fr 1fr 1fr 0.2fr;
}

.list.columns-7 .row {
	grid-template-columns: 0.2fr 1fr 1fr 1fr 1fr 1fr 0.2fr;
}

.list.invoices.columns-4 .row {
	grid-template-columns: 0.3fr 1fr 1fr 0.2fr;
}

.list.invoices.columns-6 .row {
	grid-template-columns: 0.2fr 0.8fr 1fr 0.6fr 1.3fr 0.2fr;
}

.list.coupons.columns-6 .row {
	grid-template-columns: 0.4fr 0.7fr 0.2fr 0.5fr 0.5fr 0.2fr;
}

.list .row .item {
	padding: 0 1vw 0 1vw;
}

.list .row .item.number, .list .row .item.action {
	min-width: 100px;
}

.list .row .item.active {
	line-height: 20px;
}

.list .row .item.active img {
	display: inline-block;
	border: 0;
	width: 20px;
	height: 20px;
	margin: 4px 0 0 0;
}

.list .row.header {
	background-color: var(--color-blue-light);
	padding: 20px 0;
}

.list .row.header * {
	font-family: "Figtree", Arial, Helvetica, Geneva, Tahoma, Verdana, sans-serif;
	color: #ffffff !important;
	font-size: 18px;
	line-height: 18px;
	font-weight: 400;
}

.list .data .row {
	margin: 10px 0 0 0;
	/*background-color: var(--color-blue-dark);*/ background-color: #FFFFFF;
}

.list .data .row * {
	font-size: 18px;
	line-height: 24px;
	font-weight: 300;
	/*color: #ffffff;*/ color: var(--color-blue-dark);
}

.list .data .row .item {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.list .data .row:nth-child(even) {
	background-color: #ffffff;
}

.list .data .row:nth-child(even) * {
	color: var(--color-blue-dark);
}

.list .data .row .action .Icon {
	display: inline-block;
	width: 30px;
	height: 30px;
	background-color: var(--color-blue-light);
	background-repeat: no-repeat;
	background-size: auto 60%;
	background-position: center center;
}

.list .data .row .action .Icon:hover {
	opacity: 0.5;
	cursor: pointer;
}

.list .data .row .action .Icon + .Icon {
	margin: 0 0 0 10px;
}

.list .data .row .action .Icon.edit {
	background-image: url('../images/icons/edit_white.svg');
}

.list .data .row .action .Icon.info {
	background-image: url('../images/icons/info_white.svg');
}

.list .data .row .action .Icon.delete {
	background-image: url('../images/icons/delete_white.svg');
}

.list .data .row .action .Icon.copy {
	background-image: url('../images/icons/documents_white.svg');
}

.list .data .row .action .Icon.download {
	background-image: url('../images/icons/download_white.svg');
}
/*endregion*/

/*region layout*/
.Center {
	display: block;
	text-align: center !important;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.ie7 .clearfix {
	zoom: 1;
} /* IE7 */

.Column50Left fieldset.bg-grey, .Column50Right fieldset.bg-grey {
	padding: 5% 6% 5% 6%;
}

.Column50Left fieldset.bg-grey.full, .Column50Right fieldset.bg-grey.full {
	padding: 2% 4% 4% 4%;
	margin: 8% 0 8% 0;
}

.Columns fieldset.nolegend {
	margin-top: 30px;
}

/*.Columns fieldset + fieldset {
	margin: 30px 0 0 0 !important;
}*/

.Column50Left fieldset .Button, .Column50Right fieldset .Button {
	position: absolute;
	right: 6%;
	bottom: -25px;
	min-width: 53%;
	padding: 10px 20px 10px 20px;
	background-image: none;
	font-size: 16px;
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0;
}

.Columns fieldset .Field, .Columns fieldset .Select {
}

.Columns fieldset .select-wrapper {
	position: relative;
}

.Columns .row, .Columns .row label, .Columns .row .Textnormal, .Columns .row .Textbold {
	display: block;
	font-size: 18px;
	line-height: 30px;
	text-align: left;
}

.Columns .row .Textnormal, .Columns .row .Textbold {
	font-size: 18px;
	line-height: 24px;
}

.Columns .row .Subtitle {
	font-size: 22px;
	line-height: 30px;
}

fieldset input[type='checkbox'] + label, fieldset input[type='radio'] + label {
	font-size: 16px;
	line-height: 1.44;
	font-weight: 500;
}

.bg-grey {
	display: block;
	padding: 4%;
	background-color: #f2f2f2;
	box-sizing: border-box;
}

.bg-grey.full {
	padding: 2%;
	margin: 70px 0 5% 0;
}

.bg-grey legend {
	position: absolute;
	top: -50px;
	left: 0;
	margin: 0;
	height: 0;
	padding: 0 0 2% 0;
	color: var(--color-blue-dark);
}

.bg-grey.full legend {
	padding: 0 0 2% 0;
}
/*endregion*/

/*region separators*/
.Clear {
	clear: both !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	float: none !important;
}

.ClearLeft {
	clear: left !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	float: none !important;
}

.ClearRight {
	clear: right !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	float: none !important;
}

.Space {
	display: block;
	font-size: 3px !important;
	line-height: 3px !important;
	height: 3px !important;
}

.Space5 {
	display: block;
	font-size: 5px !important;
	line-height: 5px !important;
	height: 5px !important;
}

.Space10 {
	display: block;
	font-size: 10px !important;
	line-height: 10px !important;
	height: 10px !important;
}

.Space15 {
	display: block;
	font-size: 15px !important;
	line-height: 15px !important;
	height: 15px !important;
}

.Space20 {
	display: block;
	font-size: 20px !important;
	line-height: 20px !important;
	height: 20px !important;
}

.Space30 {
	display: block;
	font-size: 30px !important;
	line-height: 30px !important;
	height: 30px !important;
}

.Space40 {
	display: block;
	font-size: 40px !important;
	line-height: 40px !important;
	height: 40px !important;
}

.Space75 {
	display: block;
	font-size: 75px !important;
	line-height: 75px !important;
	height: 75px !important;
}
/*endregion*/

/*region layout*/
.Grid {
	display: block;
	margin-top: 120px;
}

dl, dd, dt {
	font-size: 16px;
	line-height: 22px;
}

dl {
	display: flex;
	width: 100%;
	flex-direction: row;
	align-content: flex-start;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 0;
}

dt, dd {
	display: inline-block;
	width: 60%;
	margin: 0;
	padding: 2px 0;
}

dt {
	font-weight: bold;
	width: 30%;
	margin-right: 5%;
}

.Overlay dd {
	width: 70%;
}

.Overlay dt {
	width: 20%;
}

dd:after {
	content: "";
	display: block;
	width: 100%;
	height: 0;
	line-height: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

label .Color {
	display: inline-block;
	position: relative;
	top: 4px;
	width: 16px;
	height: 16px;
	margin: 0 5px 0 0;
}

.ListSort .Color {
	display: inline-block;
	float: left;
	width: 20px;
	height: 16px;
	margin: 2px 5px 0 0;
}
/*endregion*/

/*region box*/
.boxes {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: stretch;
	justify-content: center;
	align-items: stretch;
	width: 100%;
	margin: 1% 0;
	padding: 0;
	box-sizing: border-box;
}

.boxes .box {
	display: inline-block;
	position: relative;
	width: 30.33%;
	margin: 0.5%;
	padding: 0;
	overflow: hidden;
	box-sizing: border-box;
	text-align: center;
}

.boxes.two .box {
	width: 37%;
}

.boxes.two .box.video {
	margin: 4%;
}

.boxes.four {
	display: block;
}

.boxes.four .box {
	width: 21%;
	float: left;
	margin: 0 5.33% 2% 0;
}

.boxes.four .box:nth-child(4n + 0) {
	margin-right: 0;
}

.boxes.four.position-1 .box {
	width: 20%;
	margin: 0;
}

.boxes.four .box .box_icon {
	aspect-ratio: 4 / 3;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-content: center;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 4%;
}
.boxes.four.position-2 .box .box_icon img {
	max-width: 100%;
	width: auto !important;
}
.boxes.four.position-2 .box .box_icon {
	aspect-ratio: 6 / 3;
}

.boxes .box a, .boxes .box .introimage {
	display: block;
	z-index: 10;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: auto;
	height: auto;
	box-sizing: border-box;
}

.boxes .box .box_icon {
	position: relative;
	z-index: 10;
}

.boxes .box.video .Title {
	position: absolute;
	z-index: 20;
	display: inline-block;
	text-align: center;
	top: unset;
	bottom: 5%;
	left: 50%;
	min-width: 75%;
	width: auto;
	height: auto;
	padding: 2% 5%;
	font-size: 26px;
	line-height: 120%;
	background-color: rgba(255, 255, 255, 0.8);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.boxes .box.video:before {
	content: "";
	position: absolute;
	z-index: 100;
	display: inline-block;
	top: 33%;
	left: 50%;
	width: 80px;
	height: 80px;
	margin: -40px 0 0 -40px;
	background: transparent url(../images/icons/play_blue_dark.svg) no-repeat center;
	pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
	.boxes .box.video:hover:before, .boxes .box.video:hover .Title {
		opacity: 0.5;
		cursor: pointer;
	}
}

.boxes .box .box_icon img {
	max-width: 100%;
	max-height: 300px;
}

.boxes .box .background {
	position: relative;
	background-color: var(--color-light);
}

.boxes .box .background::before {
	content: "";
	display: block;
	padding-top: 100%;
}

.boxes.two .box .background::before {
	padding-top: 50%;
}

.boxes .box .background:hover {
	background-color: var(--color-blue-dark);
}

.boxes .box .background:hover .Title, .boxes .box .background:hover .Textnormal {
	color: #ffffff;
}

.boxes .box .background .box_icon {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 40%;
	max-height: 100%;
	-o-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.boxes .box .background .box_icon img {
	width: 100%;
}

.boxes .box a:hover {
	opacity: 1;
	text-decoration: none;
}

.boxes .box .Title {
	position: relative;
	display: block;
	z-index: 1000;
	top: 0;
	left: 0;
	width: 100%;
	margin: 0;
	padding: 10px 0 5px 0;
	box-sizing: border-box;
	font-size: 20px;
	line-height: 26px;
	font-weight: 500;
	color: var(--color-blue-dark);
}

.boxes .box .Subtitle {
	font-size: 16px;
	line-height: 22px;
}

.boxes .box.blue {
	background-color: var(--color-blue-dark);
	color: #FFFFFF !important;
}
.boxes .box.yellow {
	background-color: #ffed00;
	color: var(--color-dark) !important;
}
.boxes .box.yellow .Title {
	color: var(--color-dark);
}
.boxes .box.yellow .Title:before {
	background-color: var(--color-dark);
}

.boxes .box .Textnormal {
	display: block;
	margin: 4% 0 0 0;
	box-sizing: border-box;
	font-family: "Figtree", Arial, Helvetica, Geneva, Tahoma, Verdana, sans-serif;
	text-align: left;
	text-transform: none;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 0;
	font-weight: 400;
}

.boxes .box a.link {
	color: var(--color-theme-red);
	font-size: 14px;
	line-height: 20px;
}

.boxes .box a.link::after {
	content: '->';
	margin-left: 2px;
}

.boxes.two .box .content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: 4% 4% 4% 4%;
	align-items: start;
}

.boxes.two .box .content .box_icon {
	position: relative;
	top: unset;
	left: unset;
	width: 20%;
	max-height: none;
	box-sizing: border-box;
	padding: 4% 4% 4% 4%;
	-o-transform: none;
	-ms-transform: none;
	-moz-transform: none;
	-webkit-transform: none;
	transform: none;
}

/* disabled from dashboard
article.shorttext + .boxes {
	margin-top: -3%;
}*/

.boxes + article.shorttext,
.downloads + article.shorttext,
article.shorttext + article.shorttext {
	margin-top: 5%;
}

/*endregion*/

/*region product*/
.boxes .box.trailer {
	width: 23%;
	margin: 1% 1% 3% 1%;
	text-align: center;
	overflow: visible;
}

.box.trailer .image {
	display: block;
	position: relative;
	z-index: 100;
	width: 100%;
	height: auto;
	max-width: 100%;
	margin: 0 auto;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

.box.trailer .symbol {
	display: block;
	position: absolute;
	z-index: 200;
	top: 30px;
	right: 35px;
	width: 5%;
	height: 0;
	margin: 0;
	padding: 0 0 5% 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

.box.trailer .title-inline {
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	font-size: 23px;
	line-height: 28px;
	text-overflow: ellipsis;
	text-transform: uppercase;
	color: var(--color-blue-dark);
}

.box.trailer .content {
	display: block;
	opacity: 0;
	box-sizing: border-box;
	position: absolute;
	z-index: 300;
	width: 100%;
	height: 0;
	overflow: hidden;
	left: 0;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	margin: 0 auto;
	padding: 0 25px;
	background-color: var(--color-blue-dark);
}

.box.trailer:hover .content {
	opacity: 1;
	height: auto;
	min-height: 100%;
	overflow: visible;
	padding: 20px 25px;
}

.box.trailer .content, .box.trailer .content * {
	font-size: 13px;
	line-height: 20px;
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
	color: #ffffff;
	text-align: left;
}

.box.trailer .content h2 {
	display: block;
	position: relative;
	z-index: 100;
	width: auto;
	margin: 0 auto 10px auto;
	padding: 0 0;
	font-size: 23px;
	line-height: 28px;
	font-weight: normal;
	font-style: normal;
	text-decoration: none;
	text-align: left;
	text-transform: uppercase;
	color: #ffffff;
}

.box.trailer .note {
	display: block;
	font-weight: 600;
	margin: 5px 0 0 0;
}

.box.trailer .infos {
	display: block;
	margin: 5px 0 0 0;
}

.box.trailer .addon {
	display: block;
	margin: 5px 0 0 0;
}

.box.trailer .content .Button {
	display: block;
	margin: 10px auto 0 auto;
	padding: 5px 10px;
	background: #ffffff;
	font-style: normal;
	font-size: 14px;
	line-height: 18px;
	font-weight: 800;
	letter-spacing: 0;
	text-align: center;
	text-transform: initial;
	color: var(--color-blue-dark) !important;
	border: 2px solid #ffffff;
}
.box.trailer .content .Button:hover {
	color: #ffffff !important;
	background-color: var(--color-blue-dark);
	opacity: 1;
	text-decoration: none;
}

/*endregion*/

/*region stations*/
.formSearch {
	width: 45%;
	float: right;
	padding: 0 0 0 2%;
	box-sizing: border-box;
}

.SelectTrailers {
	padding: 0 0 0 10px;
}

.SelectTrailers, .SelectTrailers * {
	line-height: 30px;
}

.SelectTrailers .tooltip-container {
	width: 50%;
}

.SelectTrailers input[type="checkbox"] + label, .SelectTrailers input[type="radio"] + label {
	display: inline-block;
	min-width: 50px;
	min-height: 22px;
	margin: 0;
	padding: 0 20px 0 25px;
}

.Country {
	display: inline-block;
	margin: 0 15px 0 0;
	font-size: 16px;
	color: var(--color-font);
	line-height: 22px;
}

.Country input[type='radio'] {
	opacity: 0.5;
}

.Country input[type='radio'] + label {
	display: inline-block;
	min-height: auto;
	padding: 0;
	font-size: 20px;
	line-height: 24px;
	font-weight: 300;
	opacity: 0.5;
}

.Country input[type='radio']:checked + label::before, .Country input[type='radio']:not(:checked) + label::before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 20px;
	margin: 0 8px -1px 0;
	background-size: 30px;
	background-position: left center;
	background-repeat: no-repeat;
	border: none;
	border-radius: 0;
	box-shadow: none;
	background-color: transparent;
}

.Country.de input[type='radio']:checked + label:before , .Country.de input[type='radio']:not(:checked) + label:before {
	background-image: url(../images/flags/germany.svg);
}

.Country.ch input[type='radio']:checked + label:before , .Country.ch input[type='radio']:not(:checked) + label:before {
	background-image: url(../images/flags/swiss.svg);
}

.Country.at input[type='radio']:checked + label:before , .Country.at input[type='radio']:not(:checked) + label:before {
	background-image: url(../images/flags/austria.svg);
}

.Country input[type='radio']:checked {
	opacity: 1;
}

.Country input[type='radio']:checked + label {
	font-style: italic;
	opacity: 1;
}


.StationIcon {
	display: inline-block;
	float: right;
	width: 40px;
	height: 40px;
	margin: -5px 0 0 5px;
	background: transparent url(../images/blank.gif) no-repeat center;
	background-image: url("../images/blank.gif");
	background-size: contain;
}

.StationIcon.Servicepartner {
	width: 50px;
	background-image: url(../images/icons/icon_servicepoint.png);
	background-size: contain;
}

.StationIcon.Booking247partner {
	background-image: url(../images/icons/24-7_blue_dark.svg);
	background-size: contain;
}

.SelectTrailers .StationIcon.Booking247partner {
	width: 30px;
}

label .StationIcon.Servicepartner, label .StationIcon.Booking247partner {
	margin: -10px 0 0 15px;
}

.SelectRadius table {
	float: left;
}

.SpaceHorz {
	display: inline-block;
	white-space: nowrap;
	width: 30px;
	padding: 0;
}

.StationsList, .TrailersList {
	display: flex;
	margin: 40px 0;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: flex-start;
	justify-content: flex-start;
	align-items: flex-start;
	columns: 2;
	column-gap: 4%;
}

.StationsList {
	columns: 3;
}

.StationsList .Station, .TrailersList .Trailer {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 31%;
	margin: 0;
	padding: 2% 0 2% 0;
	border-bottom: 1px solid #dedede;
	font-weight: normal;
	font-style: normal;
	font-size: 16px;
	text-decoration: none;
	color: var(--color-font);
	line-height: 22px;
}

.StationsList .Station {
	display: block;
	width: 30.66%;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: flex-start;
}

.Station h3, .TrailersList .Trailer h3 {
	display: block;
	width: 100%;
	margin: 0 0 5px 0;
	font-size: 22px;
	line-height: 120%;
	font-weight: 400;
	text-transform: uppercase;
	font-style: normal;
	text-decoration: none;
	color: var(--color-blue-dark);
}

.Station .Address, .TrailersList .Trailer .Address {
	display: block;
	width: 100%;
	margin: 0 0 0 0;
	font-size: 16px;
	line-height: 22px;
	font-weight: 300;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--color-font);
}

.Station .more, .TrailersList .Trailer .more {
	display: block;
	margin: 4px 0;
	font-size: 16px;
	line-height: 22px;
	font-weight: 800;
	text-transform: uppercase;
	text-decoration: none;
	color: #1e405a;
	text-align: left;
}

.Station .more:before, .TrailersList .Trailer .more:before {
	content: "> ";
}

.Station .more.inline-left, .Station .more.inline-right {
	display: inline-block;
	margin-right: 20px;
}

.Station .more.inline-right {
}

#map-container {
	width: 55%;
	float: left;
	padding: 0 2% 0 0;
	box-sizing: border-box;
}

.formSearch {
	width: 45%;
	float: right;
	padding: 0 0 0 2%;
	box-sizing: border-box;
}

.search-container {
	display: inline-block;
	max-width: 100%;
	box-sizing: border-box;
	position: relative;
}

#acLocation {
	padding-right: 35px;
}

.ui-widget.ui-menu {
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: none;
	transition: none;
}

.ui-widget.ui-widget-content {
	border: 1px solid #d3d3d3;
}

.ui-widget-content {
	border: 1px solid #aaaaaa;
	background: #ffffff;
	color: #222222;
}

.ui-widget.ui-menu .ui-menu-item {
	margin: 0;
	border: 1px solid transparent;
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 26px;
	text-decoration: none;
	color: var(--color-font);
}

.ui-menu .ui-menu-item-wrapper {
	position: relative;
	padding: 3px 1em 3px 1em;
	font-size: 15px;
	line-height: 23px;
	color: var(--color-font);
}

.Paging {
	position: relative;
	text-align: center;
	list-style: none;
	display: flex;
	gap: 2%;
	list-style: none;
	margin: 0;
	padding: 3% 5%;
	border-top: 1px solid #E4E4E4;
	flex-wrap: wrap;
	justify-content: center;
}

.Paging > li {
	display: inline-block;
	padding: 0;
	height: 30px;
	width: 30px;
	line-height: 30px;
	font-size: 12px;
	font-weight: 700;
	text-align: center;
	margin-left: 0;
	border: 1px solid #c1c1c1 !important;
	background-color: #FFFFFF;
	border-radius: 50%;
}

.Paging > li:hover {
	border: 1px solid #00A9EB !important;
}

.Paging .Current {
	background-color: #00A9EB;
	color: #FFFFFF;
	border: 1px solid #00A9EB !important;
}

.Paging a {
	display: block;
	width: 30px;
	height: 30px;
	margin: 0;
	padding: 0 0 0 0;
	text-align: center;
	font-size: 12px;
	line-height: 30px;
	font-weight: 700;
	text-align: center;
	color: #707070;
}

.Paging a:hover {
	opacity: 1;
	text-decoration: none;
	color: #00A9EB;
}

.Paging .Previous {
	text-indent: -1000px;
	overflow: hidden;
	background: #c1c1c1 url('../images/redesign2026/icons/chevron-left-white.svg') 0% 0% no-repeat;
	border-color: #c1c1c1 !important;
}

.Paging .Previous:hover {
	background-color: #00A9EB;
}

.Paging .Next {
    text-indent: -1000px;
	overflow: hidden;
	background: #c1c1c1 url('../images/redesign2026/icons/chevron-right-white.svg') 0% 0% no-repeat;
	border-color: #c1c1c1 !important;
}

.Paging .Next:hover {
	background-color: #00A9EB;
}

#map {
	height: 550px;
	width: 100%;
	position: relative;
}

@media only screen and (max-width: 500px) {
	#map {
		height: 300px;
	}
}

.mapboxgl-popup {
	width: 250px;
}

.mapboxgl-popup-close-button {
	width: 30px;
	height: 30px;
	font-size: 30px;
	line-height: 20px;
}

.mapboxgl-popup-content {
	border-radius: 8px !important;
	padding: 10px 25px 10px 15px !important;
}

.event-details-content {
	max-height: 300px;
}

.event-details-content .StationIcon {
	width: 50px;
	height: 30px;
	margin: 0 0 0 10px;
}

.event-details-content .event-details-title {
	font-weight: 800;
	font-size: 16px;
	line-height: 1.44;
	color: var(--color-font);
	margin: 0 0 5px 0;
}

.event-details-content .event-details-address {
	color: var(--color-font);
	font-size: 14px;
}

.event-details-content .event-details-link {
	margin: 10px 0 0 0;
}

.event-details-link .more {
	display: block;
	padding: 0;
	font-size: 14px;
	line-height: 18px;
}

.event-details-link .more + .more {
	margin: 5px 0 0 0;
}

.event-details-link .more:focus {
	outline: none;
}

.event-details-link .more::before {
	content: "> ";
}
/*endregion*/

/*region trailers*/
.TrailersList .Trailer {
	width: 48%;
}

/*
.TrailersList .Trailer + .Trailer {
	border-top: 1px solid #999999;
}*/

.TrailersList .Trailer .image {
	border: none;
	width: 30%;
	padding: 0 0 16.5% 0;
	margin: 0 3% 0 0;
}

.TrailersList .Trailer .info {
	width: 50%;
}

.TrailersList .Trailer .data {
	width: 35%;
}

.TrailersList .Trailer .property {
	display: inline-block;
	margin: 3px 10px 3px 0;
	padding: 3px 6px;
	font-size: 14px;
	line-height: 18px;
	color: var(--color-font);
	border: 1px solid var(--color-font);
}

.TrailersList .Trailer .new {
	display: inline-block;
	margin: -5px 10px 10px 10px;
	padding: 5px;
	font-size: 16px;
	line-height: 16px;
	background-color: var(--color-blue-dark);
	color: #ffffff;
	float: right;
}

.TrailersList .Trailer .price {
	width: 20%;
	font-size: 22px;
	line-height: 26px;
	font-weight: bold;
	color: var(--color-blue-dark);
	text-align: right;
}

.TrailersList .Trailer .price .currency {
	font-size: 20px;
	line-height: 28px;
	font-weight: inherit;
	color: var(--color-font);
}

.price .tax {
	font-size: 14px;
	line-height: 22px;
	font-weight: 300;
	color: var(--color-font);
}

.Trailer .image {
	display: block;
	width: 40%;
	height: 0;
	padding: 0 0 30% 0;
	margin: 0 10px 0 0;
	border: 1px solid var(--color-blue-light);
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}
/*endregion*/

/*region layout*/
.titleimage {
	position: relative;
	margin: 0 0 0 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.titleimage span {
	position: absolute;
	bottom: 14%;
	left: 50%;
	width: 84%;
	height: 100%;
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.titleimage span .content {
	position: absolute;
	bottom: 0;
}

.titleimage h1, .titleimage h2, .titleimage h3 {
	display: block;
	box-sizing: border-box;
	margin-bottom: 20px;
	color: #ffffff;
	font-size: 80px;
	font-weight: 800;
	line-height: 80px;
	text-transform: uppercase;
}

.titleimage h3 {
	display: block;
	box-sizing: border-box;
	margin: 0;
	font-size: 32px;
	font-weight: 500;
	line-height: 35px;
	text-transform: none;
}

.portal .introimage {
	display: block;
	position: relative;
	margin: -8.2% -5% 5% -5%;
	height: 0;
	padding: 0 0 45% 0;
	overflow: hidden;
	border-radius: 24px;
}

.portal .introimage img {
	max-width: 100%;
	width: 100%;
	height: auto;
	transform: translate(-50%, -50%);
	top: 50%;
	position: absolute;
	left: 50%;
}

.portal .Duty {
	color: #000000;
}

.portal .flyout {
	position: fixed;
	z-index: 9999;
	left: 100%;
	width: fit-content;
	margin-top: 50px;
	margin-left: 0;
	box-sizing: border-box;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.Minimized .portal .flyout {
	margin-left: 40px;
}

.portal .flyout a {
	display: block;
	position: relative;
	font-style: normal;
	font-weight: 300;
	font-size: 18px;
	line-height: 30px;
	color: var(--color-font);
	text-decoration: none;
	text-transform: uppercase;
	padding: 5px 10px 5px 40px;
	margin: 3px 0 3px -40px;
	background-color: #FFFFFF;
	overflow: visible;
	white-space: nowrap;
	box-sizing: border-box;
}

.portal .flyout a:hover {
	margin-left: -100%;
}

.portal .flyout a:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 5px;
	top: 5px;
	width: 30px;
	height: 30px;
	margin: 0;
	cursor: pointer;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.portal .flyout a.stations:before {
	background-image: url("../images/icons/locations_blue_dark.svg");
}

.portal .flyout a.stations247:before {
	background-image: url("../images/icons/24-7_blue_dark.svg");
}

.portal .flyout a.registration:before {
	background-image: url("../images/icons/registration_blue_dark.svg");
}

.portal .flyout a.idea:before {
	background-image: url("../images/icons/idea_blue_dark.svg");
}

.portal .flyout a.faq:before {
	background-image: url("../images/icons/info_blue_dark.svg");
}
/*endregion*/

/*region formular*/
.formular {
	width: 100%;
	margin: 0 auto;
}

fieldset {
	position: relative;
	border: none;
	box-shadow: none;
	padding: 0 20px 20px 0;
}

fieldset .col-25 {
	width: 24% !important;
}

fieldset .col-33 {
	width: 32% !important;
}

fieldset .col-50,
.kb-formbox .col-50 {
	width: 49% !important;
}

fieldset .flex-row + .flex-row,
.kb-formbox .flex-row + .flex-row {
	margin: 10px 0 0 0;
}

fieldset.bordered {
	padding: 60px 4% 2% 4% !important;
	border: 1px solid grey;
	border-radius: 10px;
}

fieldset.bordered + fieldset.bordered {
	margin-top: 4%;
}

fieldset.bordered > legend {
	color: var(--color-font) !important;
	font-size: 18px;
	font-weight: 900;
	line-height: 1.35;
	padding: 0 !important;
	margin: 0 !important;
	position: absolute;
	top: 25px;
	left: auto;
	background: none;
}

.Column50Left fieldset, .Column50Right fieldset {
	padding: 0 0 20px 0;
}

::placeholder {
	color: #9c9c9c;
	opacity: 1;
}

input, textarea, select {
	font-family: "Figtree", Arial, Helvetica, Geneva, Tahoma, Verdana, sans-serif;
}

input[type='text'],
input[type='date'],
input[type='time'],
input[type='email'],
input[type='password'],
input[type='textarea'],
.Field,
textarea,
.Fieldtextarea {
	position: relative;
	width: 100%;
	padding: 5px 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	/*border: 1px solid #000000;
	border-radius: 10px;
	background-color: #ffffff;*/
	text-align: left;
	font-size: 16px;
	line-height: 22px;
	font-weight: normal;
	text-decoration: none;
	color: var(--color-font);

	border: 0;
	border-radius: 10px;
	background-color: #F0F0F2;
	border: #F0F0F2 solid 1px;
	box-sizing: border-box;
}

input[type='text']:focus,
input[type='date']:focus,
input[type='time']:focus,
input[type='email']:focus,
input[type='password']:focus,
input[type='textarea']:focus,
.Field:focus,
textarea:focus,
.Fieldtextarea:focus,
select:focus {
	outline: 1px solid var(--rd-blue);
	outline-offset: -1px;
}

textarea,
.Fieldtextarea {
	min-height: 100px;
	resize: vertical;
}

input[type='date'], input[type='time'] {
	cursor: pointer;
	-webkit-appearance: revert;
	-moz-appearance: revert;
	appearance: none;
}

input[type='date']::-webkit-calendar-picker-indicator, input[type="time"]::-webkit-calendar-picker-indicator {
	filter: invert(0.5) sepia(1) saturate(5) hue-rotate(175deg);
	background-position: right center;
	background-size: 20px auto;
	cursor: pointer;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
	width: auto;
	height: auto;
}

input[type=time]::-webkit-datetime-edit-fields-wrapper {
	display: flex;
}

textarea:focus, input:focus {
	outline: none;
}

.Select, .SelectSmall, .SelectCheckboxes {
	border-color: #000000;
	font-size: 16px;
	line-height: 22px;
	font-weight: normal;
	border: 1px solid #F0F0F2 !important;
	border-radius: 10px !important;
	background-color: #F0F0F2 !important;
	box-sizing: border-box;
}

.Select option {
	font-size: 16px;
	line-height: 22px;
	font-weight: normal;
	text-decoration: none;
	color: var(--color-font);
}

.Highlighted {
	border-color: var(--color-theme-dark) !important;
}

.FieldFileText {
	padding: 5px 6px !important;
}

input[type='submit'], input[type='reset'], .Button.Blue, .modal .Button {
	display: inline-block;
}

.modal .Button {
	margin: 0 10px !important;
}

input[type='reset'] {
	background-color: var(--color-blue-light);
	color: #ffffff;
}

input[type='submit']:hover, .Button:hover {
	opacity: 0.5;
}

input[type='reset']:hover {
	opacity: 0.7;
}

input[type='submit']:disabled, input[type='button']:disabled, input[type='reset']:disabled {
	opacity: 0.5;
}

/*input[type='checkbox']:not(:checked) + label::before,
input[type='radio']:not(:checked) + label::before {
    background-color: #00a9eb;
}*/

input[type='checkbox'].error:not(:checked)+label::before,
input[type='radio'].error:not(:checked)+label::before {
	/*border: 1px solid red;*/
	outline: 2px solid red;
	border-radius: 5px;
}

select:disabled {
	color: var(--color-font);
	opacity: 0.6 !important;
}

span.error {
	display: block !important;
	margin: 5px 5px 5px 5px;
	color: red;
	max-width: 100%;
	box-sizing: border-box;
	font-size: 14px;
	line-height: 1.44;
}

dt span.error {
	text-transform: none;
}

label span.error {
	display: block !important;
	margin: 0 0;
}

input.Field.error {
	outline: 1px solid red;
	outline-offset: -1px;
}

.floating-label {
	position: relative;
}

.floating-label > .Field, .floating-label > .Fieldtextarea, .floating-label > .Select, .floating-label .FieldFilterInput, .floating-label .FieldFileText {
	height: calc(3.7rem + 2px);
	padding: 1rem 20px;
	line-height: 1.25;
}

.floating-label .FieldFilterList, .floating-label .FieldFileText {
	top: calc(3.7rem + 2px) !important;
	width: 100% !important;
}

.floating-label > .Field::placeholder, .floating-label > .Fieldtextarea::placeholder, .floating-label > .Select::placeholder, .floating-label .FieldFilterInput::placeholder, .floating-label .FieldFileText::placeholder {
	color: transparent;
}

.floating-label > .Field:focus, .floating-label > .Fieldtextarea:focus, .floating-label .FieldFilterInput:focus, .floating-label .FieldFileText:focus, .floating-label > .Field:not(:placeholder-shown), .floating-label > .Fieldtextarea:not(:placeholder-shown), .floating-label .FieldFilterInput:not(:placeholder-shown) .floating-label .FieldFileText:not(:placeholder-shown), .floating-label > .Select {
	padding-top: 1.625rem;
	padding-bottom: 0.625rem;
	opacity: 1;
}

.floating-label .FieldFilterInput, .floating-label .FieldFileText, .floating-label .FieldFilterInput:focus, .floating-label .FieldFileText:focus, .floating-label .FieldFilterInput:not(:placeholder-shown), .floating-label .FieldFileText:not(:placeholder-shown) {
	padding-top: 1.125rem;
	padding-bottom: 1.125rem;
}

.floating-label > label {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	/*display: flex;*/
	display: inline-block;
	align-items: center;
	box-sizing: border-box;
	padding: 0.6rem 20px;
	pointer-events: none;
	border: 1px solid transparent;
	opacity: 1;
	font-size: 16px;
	line-height: calc(2.5rem + 2px);
	height: calc(3.7rem + 2px);
	transform-origin: 0 0;
	transition: opacity .1s ease-in-out, transform .1s ease-in-out;
	hyphens: auto;
	white-space: nowrap;
	max-width: calc(100% - 0.8rem);
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: left;
}

.floating-label > .Fieldtextarea + label {
	align-items: start;
}

.floating-label > .FieldFilterContainer + label {
	z-index: 9999;
}

.floating-label > .Field:focus~label, .floating-label > .Fieldtextarea:focus~label, .floating-label .FieldFilterInput:focus~label, .floating-label > .Field:not(:placeholder-shown)~label, .floating-label > .Fieldtextarea:not(:placeholder-shown)~label, .floating-label .FieldFilterInput:not(:placeholder-shown)~label, .floating-label > .FieldFilterContainer.focus + label, .floating-label > .Select~label {
	padding: 1rem 22px;
	font-size: 1rem;
	line-height: 1.5;
	font-weight: 400;
	color: var(--color-font);
	opacity: .65;
	transform: scale(.85) translateY(-0.5rem) translateX(0.15rem);
}

.range_container {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 35% auto;
}

.sliders_control {
	position: relative;
	display: flex;
	align-items: center;
	margin-bottom: 50px;
}

.form_control {
	position: relative;
	display: flex;
	justify-content: space-between;
	font-size: 24px;
	color: #635a5a;
}

input[type=range]::-webkit-slider-thumb {
	-webkit-appearance: none;
	pointer-events: all;
	width: 11px;
	height: 11px;
	background-color: var(--color-blue-dark);
	border-radius: 50%;
	cursor: pointer;
}

input[type=range]::-moz-range-thumb {
	-webkit-appearance: none;
	pointer-events: all;
	width: 11px;
	height: 11px;
	background-color: var(--color-blue-dark);
	border-radius: 50%;
	cursor: pointer;
}

input[type=range]::-webkit-slider-thumb:hover {
	background: #f7f7f7;
}

input[type=range]::-webkit-slider-thumb:active {
	box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;
	-webkit-box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;
}

input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
	opacity: 1;
}

input[type="range"] {
	position: absolute;
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 3px;
	background-color: #ffffff;
	pointer-events: none;
}

.fromSlider {
	height: 0 !important;
	z-index: 1;
}

.slide_container {
	width: 96%;
	margin: 35% auto;
}

.ui-slider {
	height: 3px;
	background: #ffffff;
}

.ui-slider .ui-slider-handle {
	width: 15px;
	height: 15px;
	border-radius: 50%;
}

.ui-slider-horizontal .ui-slider-handle {
	top: -6px;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
	background-color: var(--color-blue-dark);
}

.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-button:hover, .ui-button:focus {
	background-color: #ededed;
}

.ui-menu .ui-state-focus, .ui-menu .ui-state-active {
	/*margin: -1px;*/ font-style: italic;
}

.slide_control {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
	font-size: 24px;
	line-height: 24px;
}

form.contact .flex-row + .flex-row {
	margin-top: 5px;
}

form.formular, form.contact, form.registration {
	/*max-width: 1100px;*/
	margin: 0 auto;
}

form.formular .Field,
form.formular .Fieldtextarea,
form.formular .Select,
form.formular #booking .bg-grey,
form.contact .Field,
form.contact .Fieldtextarea,
form.contact .Select {
	max-width: 650px;
	border: none;
}

form.formular .Field:disabled,
form.formular .Fieldtextarea:disabled,
form.formular .Select:disabled,
form.contact .Field:disabled,
form.contact .Fieldtextarea:disabled,
form.contact .Select:disabled {
	/*background: repeating-linear-gradient(-25deg, #ffffff, #f0f0f0 15px, #dedede 15px, #dedede 30px); */
	opacity: 0.35;
	outline: 1px solid #cccccc;
	outline-offset: -1px;
}

form.formular .Field:disabled + label,
form.formular .Fieldtextarea:disabled + label,
form.formular .Select:disabled + label {
	opacity: 0.35;
}

.registration #registration_types {
	justify-content: space-evenly;
	margin: 2% 0 4% 0;
}

.registration #registration_types .button .Button {
	display: block;
	width: fit-content;
	min-width: 200px;
	margin: 0 auto;
	padding: 5px 15px;
	-o-transform: rotate(-8deg);
	-ms-transform: rotate(-8deg);
	-moz-transform: rotate(-8deg);
	-webkit-transform: rotate(-8deg);
	transform: rotate(-8deg);
	background-color: var(--color-blue-dark);
	font-size: 30px;
	line-height: 30px;
	text-transform: uppercase;
	color: #ffffff;
}

.registration #registration_types .button .Button:first-child {
	background-color: var(--color-blue-light);
}

.registration #registration_types .button:hover {
	opacity: 0.5;
	cursor: pointer;
	text-decoration: none;
}

.registration #registration_types .button .Button:hover {
	opacity: 1;
}

.registration #registration_types .button .Button + .Button {
	margin-top: 5px;
}

.registration #registration_types .button.Active .Button, .registration #registration_types .button:hover .Button {
	background-color: #3C545C;
}

.registration #registration_types .button.Active .Button:first-child, .registration #registration_types .button:hover .Button:first-child {
	background-color: #72848B;
}

.registration .button input[type="radio"] + label.Button::before {
	visibility: hidden;
	display: block;
	width: 0;
	height: 0;
	border: none;
}

.registration .button input[type="radio"]:checked + label.Button {
	opacity: 0.5;
}

.registration .Field, .registration .Select, .registration #booking .bg-grey, .registration .description {
	max-width: 400px;
}

.registration .description {
	margin-bottom: 15px;
}

.registration #openingHours .weekday, .registration .trailers .trailer, .formular .trailers .trailer {
	box-sizing: border-box;
	max-width: 400px;
	padding: 0;
}

.registration #openingHours .weekday {
	border: 1px solid #dedede;
	padding: 4%;
}

.registration #openingHours .weekday + .weekday {
	margin-top: 10px;
}

.registration #openingHours .time + .time {
	margin-top: 4%;
}

.registration .trailers .container, .formular .trailers .container {
	box-sizing: border-box;
	max-width: 400px;
}
/*endregion*/

/*region Frontend*/
.Frontend .CheckboxList {
	padding: 0 2%;
}

.Frontend .Intended table {
	display: table;
	border: none;
	border-collapse: collapse;
	padding: 0;
	width: auto;
	margin: 0 2%;
}

.Frontend .Filter li.Label {
	font-weight: normal;
	font-size: 16px;
}

.Frontend .Filter .Select, .Frontend .Filter .SelectCheckboxes {
	max-width: 175px;
	font-weight: normal;
	font-size: 16px;
}

.Frontend .row .col-25 label {
	padding: 10px 6px 10px 0;
	display: inline-block;
}

.Frontend .ButtonCalendar {
	margin: 17px 5px 17px 10px;
}

.Frontend table {
}

.Frontend table td, .Frontend table th {
	font-family: "Figtree", Arial, Helvetica, Geneva, Tahoma, Verdana, sans-serif;
	font-weight: normal;
	font-style: normal;
	font-size: 15px;
	text-decoration: none;
	line-height: 24px;
	padding: 0;
	border: none;
}

.Frontend table td {
	vertical-align: inherit;
}

.Frontend table th {
	font-weight: 500;
	background-color: transparent;
	padding: 2px 10px;
}

.Frontend .ListHeader {
	font-size: 15px;
	color: #073370;
	height: auto;
	background: none;
}

.Frontend .ListHeader td, .Frontend .ListHeader th {
	vertical-align: middle;
}

.Frontend .Textleft {
	text-align: left;
}

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

.Frontend .Textright {
	text-align: right;
}

.Frontend .ListSort.Textleft {
	font-weight: 500;
}

.Frontend .LineSolid {
	background-color: #073370 !important;
}

.Frontend table td.Error {
	padding: 25px 25px;
	border-left: 10px #B4140A solid;
	border-radius: 10px;
}

.Frontend .ListBody.Odd {
	background-color: #ececec !important;
}

.Frontend .TextsmallRed {
	font-size: 13px;
	text-decoration: none;
	color: #cc1638;
	line-height: 18px;
}

.Frontend .RegisterTabs .Register {
	width: 49.5%;
	box-sizing: border-box;
	font-size: 18px;
	padding: 10px 20px 10px 20px;
	background-color: transparent;
	color: #000000;
	opacity: 1;
}

.Frontend .RegisterTabs .Register.Active, .Frontend .RegisterTabs .Register:hover {
	background-color: var(--color-dark);
	color: #ffffff;
}

.Frontend .RegisterTabs .Register:nth-child(even) {
	margin: 0 0 0 0;
}

.Frontend .Field.Calendar {
	width: calc(100% - 30px);
	border-right: none;
}

.Frontend .ButtonCalendar.Calendar {
	background-color: #ffffff;
	width: 30px;
	height: 32px;
	padding: 0 15px 0 14px;
	margin: 0;
	box-shadow: none;
	border: 1px solid #c7c7c7;
	border-left: none;
}
/*endregion*/

/*region content layout*/
.Mobile {
	display: none !important;
}

ul.List h1, ul.List h2, ul.List h3, ul.List h4, ul.List a, ul.List p, ul.List ul, ul.List ol, ul.List div, ul.List dd, ul.List dt, ul.List span, ul.List font, ul.List textarea, ul.List label {
	font-size: 14px;
	line-height: 20px;
}
/*endregion*/

/*region buttons*/
.Button {
	font-family: "Figtree", sans-serif;
	display: inline-block;
	margin: 0;
	padding: 10px 30px;
	font-weight: 800;
	font-style: normal;
	font-size: 18px;
	line-height: 22px;
	text-decoration: none;
	border-radius: 20px !important;
	color: #ffffff !important;
	border: none;
	background-color: var(--color-blue-dark);
	background-image: none;
	cursor: pointer;
	box-shadow: none;
}
.Button + .Button {
	margin-left: 20px;
}
.Button.light {
	margin: 5px auto 0 auto;
	padding: 5px 10px;
	background: #ffffff;
	font-style: normal;
	font-size: 14px;
	letter-spacing: 0;
	text-align: center;
	line-height: 18px;
	text-transform: initial;
	color: var(--color-blue-dark);
	border: 2px solid #ffffff;
}

.Button.light:hover {
	color: #ffffff;
	background-color: var(--color-blue-dark);
}

.Button.Small {
	font-size: 11px;
	padding: 3px 10px;
	min-width: 0;
}

.Button.Edit {
	margin-top: 10px;
	padding: 3px 10px 3px 30px;
	background-image: url(../images/icons/edit_blue.svg);
	background-position: 5px 50%;
	background-repeat: no-repeat;
}

.Button.Copy {
	background-color: var(--color-dark);
	border-bottom: 2px solid var(--color-theme-red);
}

.Button.Back,
.Button.Next {
	background-color: var(--color-blue-light);
}

.Button.Back::before, .Button.Next::after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	width: 25px;
	height: 20px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.Button.Back {
	padding-left: 20px;
}

.Button.Back::before {
	background-image: url('../images/icons/arrow_left_white.svg');
	margin-right: 5px;
}

.Button.Next::after {
	background-image: url('../images/icons/arrow_right_white.svg');
	margin-left: 5px;
}

.Button.More {
	margin-top: 10px;
	padding: 3px 10px 3px 30px;
	background-image: url(../images/icons/info_blue.svg);
	background-position: 5px 50%;
	background-repeat: no-repeat;
}

.Button.Search {
	display: inline-block;
	padding: 0 5px;
	height: 24px;
	width: 24px;
	cursor: pointer;
	text-align: center;
	vertical-align: middle;
	border: none;
	background: transparent url(../images/icons/search_blue.svg) no-repeat center;
	text-indent: -99999px;
	overflow: hidden;
}

.Button.disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.Button:hover {
	text-decoration: none;
	color: #ffffff;
}

a.Button.Search::before {
	content: '';
	display: inline-block;
	vertical-align: bottom;
	width: 25px;
	height: 25px;
	margin-right: 5px;
	background-image: url('../images/icons/search_white.svg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.Button.Previous {
	float: left;
}
.Button.Previous:before {
	content: " ";
	float: left;
	display: inline-block;
	height: 20px;
	width: 20px;
	background-image: url(../images/icons/pull_left_blue.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	margin: 0 5px 0 -5px;
	padding: 0;
}

.Button.Next {
	float: right;
}

.Button.Grey {
	background-color: #FFFFFF !important;
	color: var(--rd-text) !important;
	border: 1px solid var(--rd-text);
}

.Button.Grey:hover {
	border-color: var(--rd-blue);
	color: var(--rd-blue) !important;
	background: #FFFFFF !important;
}

.button-container .Button {
	margin: 5px 0 5px 0;
}

.kb-button.Loading,
.Button.Loading {
	position: relative !important;
	width: auto !important;
	height: auto !important;
	top: unset !important;
	left: unset !important;
	vertical-align: unset !important;
	background-image: url(../images/loading.svg) !important;
	background-size: 20px !important;
	background-repeat: no-repeat !important;
	background-position: 20px center !important;
	padding-left: 50px !important;
	cursor: not-allowed !important;
	opacity: 0.5 !important;
	pointer-events: none !important;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

/*.Button.Next:after {
    content: " ";
    float: right;
    display: inline-block;
    height: 20px;
    width: 20px;
    background-image: url(../images/icons/pull_right_blue.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin: 0 -5px 0 5px;
    padding: 0;
}

.Button.Next.Blue:after {
    background-image: url(../images/icons/pull_right_white.svg);
}*/
/*endregion*/

/*region toggle*/
.toggle, .Container h2.toggle {
	font-family: 'Figtree', sans-serif;
	display: block;
	position: relative;
	font-size: 16px;
	font-weight: 500;
	text-decoration: none;
	color: #ffffff;
	background-color: var(--color-blue-dark);
	line-height: 22px;
	padding: 18px 15px;
	margin: 10px auto 0 auto;
	text-align: left;
	width: 98%;
	max-width: 1200px;
	box-sizing: border-box;
}

.Container h2.toggle:hover {
	opacity: 0.7;
}

.toggle span.expander {
	display: block;
	position: absolute;
	top: 50%;
	left: 20px;
	width: 30px;
	height: 30px;
	margin: -14px 0 0 0;
	opacity: 1;
	cursor: pointer;
	background: transparent url('../images/icons/arrow_down.svg') no-repeat center;
	background-size: auto;
	background-size: 20px auto;
}

.toggle.toggle-expanded, .toggle.toggle-collapsed:hover {
	background-color: var(--color-blue-light);
}

.toggle.toggle-expanded span.expander, .toggle.toggle-expanded span.arrow {
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	transform: rotate(180deg);
}

.toggle-content {
	display: none;
	box-sizing: border-box;
	width: auto;
	height: auto;
	margin: 1px auto 1px auto;
	padding: 0 15px;
	text-align: left;
	background-color: #ffffff;
	max-width: 1200px;
}

.toggle-content.toggle-visible {
	display: block;
	overflow: hidden;
	height: auto;
	opacity: 1;
	padding: 30px;
}

.toggle-content.toggle-hidden {
	overflow: hidden;
	height: 0;
	opacity: 0;
	padding: 0 !important;
}
/*endregion*/

/*region icons*/
.icon {
	display: inline-block !important;
	position: relative;
	box-sizing: border-box;
	float: right !important;
	padding: 0 !important;
	width: 30px !important;
	height: 30px !important;
	margin: 0 0 0 5px;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}

.icon.remove {
	background-image: url(../images/icons/remove_blue.svg);
	width: 30px !important;
	height: 24px !important;
	margin: 0 0 0 0;
	float: none !important;
}
.icon.remove:hover {
	background-image: url(../images/icons/remove_grey.svg);
}

.icon.mail {
	background: transparent url(../images/icons/mail_blue.svg) no-repeat center;
	background-size: contain;
}

.icon.document {
	background: transparent url(../images/icons/document_blue.svg) no-repeat center;
	background-size: contain;
	width: 25px !important;
}
/*endregion*/

/*region Modal*/
.modal {
	display: block;
	box-sizing: border-box;
	margin: 0 auto;
	min-width: 50%;
	max-width: 600px;
	text-align: center;
	padding: 0;
}

.modal .logo {
	width: 250px;
	height: 100px;
	display: block;
	margin: 0 auto 50px auto;
	padding: 0;
	background: transparent url(../images/logo.svg) no-repeat center;
	background-size: contain;
	box-sizing: border-box;
}
.modal .logo:hover {
	text-decoration: none;
}

.modal .logo img {
	width: 100%;
	height: auto;
}

.modal .title {
	text-transform: uppercase;
	font: normal normal 500 16px/24px "Figtree";
	letter-spacing: 1.5px;
	color: var(--color-dark);
	display: block;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	text-align: center;
	text-decoration: none;
}
.modal .title:after {
	content: ' ';
	width: 40px;
	height: 40px;
	display: inline-block;
	margin: -15px 0 -15px 0;
	background: transparent url(../images/icons/check_blue.svg) no-repeat center;
	background-size: contain;
}

.modal .actions {
	text-align: center;
}
/*endregion*/

/*region layout*/
.actions {
	display: block;
	margin: 20px 0 0 0;
}

.image-preview {
	display: block;
	width: 200px;
	max-width: 100%;
	height: auto;
	border: 1px solid #F1F1F1;
	background-color: #FFFFFF;
	box-sizing: border-box;
}

.MatomoOptout {
	height: 80px;
}
/*endregion*/

/*region pageing*/
.pageing.Container {
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
	padding: 0 10px;
}

.pageing.Container.flex-center {
	justify-content: center;
}

.pageing.Container .flex-item {
	display: flex;
}

.pageing .pageing_button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	margin: 0 3px 5px;
	background-color: #ffffff;
	border-radius: 50%;
	font-size: 17px;
	color: var(--color-blue-dark);
}

.pageing .pageing_button.active, .pageing .pageing_button:hover {
	background-color: var(--color-blue-light);
	color: #ffffff;
}
/*endregion*/

/*region booking queries*/

#CouponCheck {
	display: inline-block;
	width: 30px;
	height: 30px;
	margin: 0;
	padding: 0;
	border: none;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 30px 30px;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

#CouponCheck.Valid {
	background-image: url(../images/redesign2026/icons/valid.svg);
}

#CouponCheck.Invalid {
	background-image: url(../images/redesign2026/icons/invalid.svg);
}

#CouponMessage {
	display: inline-block;
	box-sizing: border-box;
	font-size: 16px;
	text-decoration: none;
	color: inherit;
	line-height: inherit;
	font-weight: inherit;
	font-style: italic;
}
/*endregion*/

/*region dropzone*/
.dropzone {
	border: 1px solid #dedede;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	justify-content: center;
}
.dropzone.single-image {
	border: 1px solid #dedede;
	padding: 0;
}
.dropzone .dz-message {
	margin: 0;
}
/*region dropzone*/

/*region dashboard*/
.site-dashboard-services-downloads .Subtitle {
	text-align: left;
}

.site-dashboard-services-downloads .boxes.four.position-1 .Subtitle {
	text-align: center;
}

.site-dashboard-services-downloads article.shorttext {
	text-align: left;
	max-width: 100%;
	margin-bottom: 0 !important;
	margin-top: 8% !important;
	padding-bottom: 0;
}

.site-dashboard-services-downloads .Frontend .Subtitle + .Textnormal {
	margin-top: 0;
}

.site-dashboard-services-downloads .box_icon img {
	width: 100% !important;
	height: auto !important;
}

.site-dashboard-services-downloads .box {
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

.site-dashboard-services-downloads .box_icon {
    position: relative !important;
    width: unset !important;
    height: unset !important;
    margin: 0 0 2% 0 !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
}
/*endregion dashboard*/

/*region media queries, responsive*/

@media(max-width: 1600px) {
	article.introtext .textcontent .Introtitle {
		font-size: 32px;
		line-height: 42px;
	}

	.tooltip-content {
		top: -120px;
		bottom: unset;
		left: -13px;
		margin-left: 0;
	}

	.tooltip-content::before, .tooltip-content::after {
		left: 7px;
		bottom: -7px;
		-webkit-box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1);
		-moz-box-shadow: 0 0 5px 2px rgba(0,0,0,0.1);
		box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1);
	}

	header .NavigationPos a {
		background-position: center center;
	}

	.Country input[type="radio"] + label {
		font-size: 18px;
		line-height: 22px;
	}

	header #Navigation li a, header #Navigation li a.Active {
		font-size: 18px;
		line-height: 24px;
		padding: 45px 15px;
	}
	header #Navigation li a .icon {
		margin: -4px 7px 0 0;
	}
}

@media(max-width: 1400px) {
	.home .Country span {
		display: none;
	}

	.home .search .formSearch .info247 {
		padding: 5px 0;
	}

	.home .search .formSearch .info247 img {
		height: 30px;
	}

	.home .search .formSearch .start-search .toggle, .home .search .formSearch #trailer-placeholder, .home .search .formSearch .start-search .Feld {
		font-size: 17px;
		line-height: 21px;
	}

	.home .search .formSearch .Button {
		font-size: 20px;
		line-height: 24px;
	}

	.boxes.two .box {
		width: 45%;
	}

	.boxes.two .box.video {
		width: 40%;
	}

	.boxes .box .Title {
		font-size: 16px;
		line-height: 22px;
	}

	.boxes .box a.link {
		font-size: 12px;
		line-height: 18px;
	}

	.boxes .box .box_icon img {
		max-height: 250px;
	}

	.dashboard.list_view #sidebar, .dashboard.list_view .content {
		padding-left: 2%;
		padding-right: 2%;
	}

	header #Navigation li a, header #Navigation li a.Active {
		font-size: 16px;
		line-height: 20px;
	}
	header #Navigation li a .icon {
		margin: -6px 7px 0 0;
	}
}

@media(max-width: 1200px) {
	#Content .cms-teaser .teaser-button,
	#Content .cms-claim .claim-button,
	#Content .boxes .box a.link,
	#Content section.cms-hero .hero-button,
	.howto2026 .step-card .step-button {
		min-width: 250px !important;
	}

	article.introtext .textcontent .Introtitle {
		font-size: 26px;
		line-height: 36px;
	}

	.home .boxes .box .title-inline {
		font-size: 20px;
		line-height: 24px;
	}

	.dashboard .box.small h3 {
		font-size: 18px;
	}

	.dashboard .grid-item .content a.image span {
		font-size: 16px;
		line-height: 22px;
	}

	.dashboard.list_view #sidebar summary {
		font-size: 16px;
		line-height: 22px;
	}

	.Container ul.menu img {
		margin: 0 45px 5px 45px;
	}

	aside.sidemenu .headline {
		font-size: 16px;
	}

	.MatomoOptout {
		height: 100px;
	}

	header #NavigationToggle {
		display: inline-block;
		left: 300px;
		background-image: url('../images/icons/menu_blue_dark.svg');
		background-repeat: no-repeat;
	}

	header #NavigationToggle.toggle-expanded {
		background-image: url('../images/icons/cross_menu_blue_dark.svg');
	}

	/*header #Navigation {
		position: absolute;
		float: none;
		top: 100%;
		left: -100%;
		right: initial;
		max-width: unset;
		width: auto;
		height: auto;
		z-index: 100;
		margin: 0 0 0 0;
		padding: 2% 2% 2% 2%;
		background: none;
		background-color: rgba(0, 0, 0, 0);
		background-color: #ffffff;
		-webkit-box-shadow: 0 5px 5px 0 rgba(0,0,0,0.2);
		-moz-box-shadow: 0 5px 5px 0 rgba(0,0,0,0.2);
		box-shadow: 0 5px 5px 0 rgba(0,0,0,0.2);
	}*/

	header #Navigation.toggle-visible {
		box-sizing: border-box;
		width: auto;
		left: 300px;
		opacity: 1;
	}

	header #Navigation ul {
		display: block;
		left: 0;
		width: auto;
		min-width: initial;
		margin: 0;
		position: relative;
		text-align: left;
	}

	header #Navigation li {
		position: relative;
		display: block;
		float: none;
		margin: 7px 0;
		/*border-bottom: 1px solid var(--color-light);*/
	}

	/*header #Navigation li a {
		margin: 0 60px 0 20px;
		padding: 10px 10px 10px 10px !important;
		font-size: 24px !important;
		line-height: 32px !important;
	}*/

	header #Navigation li a .icon {
		margin: 0 10px 0 0;
	}

	/*header.logged .Mobile, header.logged ul li.login {
		display: block !important;
	}*/
}
/*endregion*/

/*region openinghours*/
.floating-openinghours {
	position: relative;
}

.floating-openinghours .ButtonAdd, .floating-openinghours .ButtonRemove {
	float: right;
	margin: 4px 0 0 10px;
	display: inline-block;
	font-size: 28px;
	font-weight: normal;
	color: #ffffff;
	width: calc(3.2rem + 2px);
	height: calc(3.2rem + 2px);
	text-align: center;
	padding: 0;
	line-height: 1.25;
	opacity: 0.5;
	cursor: pointer;
	border: none;
	border-radius: 50%;
	background-color: var(--color-blue-light);
	background-repeat: no-repeat;
	background-size: auto 60%;
	background-position: center center;
}
.floating-openinghours .ButtonAdd:hover, .floating-openinghours .ButtonRemove:hover {
	opacity: 1;
}
.floating-openinghours .floating-label {
	float: left;
	margin: 0 0 5px 0;
}
.floating-openinghours .floating-label:first-of-type {
	margin-right: 5px;
}
.floating-openinghours .floating-label:last-of-type {
	width: 100%;
}

.fancybox-active {
	overflow: hidden;
}
/*endregion*/


/*#region Redesign 2026 - Header/Navigation */
body {
	overflow-x: hidden;
}
.stations2026,
.home .hero2026,
.home #top.hero2026,
.registration2026,
.site-login {
	margin-top: -24px !important;
}

@media (min-width: 991px) {
    #MJUHeader.Header {
    	background: #FFFFFF;
    	height: auto;
    	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.10);
    }
    #MJUHeader.Header .Container {
    	display: flex;
    	align-items: center;
    	justify-content: space-between;
    	height: 160px;
    	max-width: 1800px;
    	margin: 0 auto;
    	padding: 0 40px;
    	position: relative;
    	float: none;
    	width: auto;
    	transition: height 0.3s ease;
    }
    #MJUHeader.Header.Minimized .Container {
    	height: 90px;
    }
    #MJUHeader.Header.Minimized a.logo img {
    	height: 48px;
    }
    #MJUHeader.Header .Bar {
    	display: none;
    }
    #MJUHeader.Header a.logo {
    	position: absolute;
    	left: calc((min(100vw, 1800px) - 100vw) / 2);
    	top: 50%;
    	transform: translateY(-50%);
    	float: none;
    	margin: 0;
    	padding: 0;
    	height: auto;
    }
    #MJUHeader.Header a.logo img {
    	height: 75px;
    	width: auto;
    	display: block;
    }
    #MJUHeader.Header .hamburger {
    	display: none;
    }
    #MJUHeader.Header nav#Navigation {
    	position: absolute;
    	left: 43%;
    	top: 50%;
    	transform: translate(-50%, -50%);
    	float: none;
    	margin: 0;
    	height: auto;
    	width: auto;
    }
    #MJUHeader.Header nav#Navigation ul {
    	display: flex;
    	align-items: center;
    	gap: 7%;
    	margin: 0;
    	padding: 0;
    	list-style: none;
    }
    #MJUHeader.Header nav#Navigation ul li {
    	float: none;
    	margin: 0;
    	padding: 0;
    	height: auto;
    	width: auto;
    	border: 0;
    	background: none;
    }
    #MJUHeader.Header nav#Navigation ul li .icon {
    	display: none;
    }
    #MJUHeader.Header nav#Navigation ul li a {
    	display: block;
    	font-family: var(--rd-font);
    	font-size: 17px;
    	font-weight: 500;
    	line-height: 1.2;
    	color: var(--rd-text);
    	text-transform: none;
    	text-decoration: none;
    	letter-spacing: 0;
    	padding: 0;
    	height: auto;
    	background: none;
    }
    #MJUHeader.Header nav#Navigation ul li a:hover {
    	color: var(--rd-blue);
    }
    #MJUHeader.Header nav#Navigation ul li.Mobile {
    	display: none;
    }
    #MJUHeader.Header .Container .profile {
    	margin-left: auto;
		max-width: 300px;
    }
    .Grid {
    	margin-top: 184px;
    }
}

@media (min-width: 1281px) {
	#MJUHeader.Header nav#Navigation ul {
		gap: 12%;
	}
	#MJUHeader.Header .Container .profile {
		max-width: 350px;
	}
}

#MJUHeader.Header .profile {
	float: none;
	margin: 0;
	position: relative;
}
#MJUHeader.Header .profile .login-pill, #MJUHeader.Header .profile .account-pill {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	border: 1px solid #ABABAB;
	border-radius: 26px;
	padding: 7px 14px;
	margin: 0;
	height: 50px;
	font-family: var(--rd-font);
	font-size: 17px;
	font-weight: 500;
	color: var(--rd-text);
	background: #FFFFFF;
	line-height: 1;
	cursor: pointer;
	box-sizing: border-box;
	text-align: left;
	padding-right: 34px;
}
#MJUHeader.Header .profile .login-pill .icon, #MJUHeader.Header .profile .account-pill .icon {
	width: 24px !important;
	height: 24px !important;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c1.5-3.5 4.5-5 8-5s6.5 1.5 8 5'/%3E%3C/svg%3E") center / contain no-repeat;
}
#MJUHeader.Header .profile .account-pill .arrow {
	width: 12px;
	height: 12px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}
#MJUHeader.Header .profile .login-pill:hover, #MJUHeader.Header .profile .account-pill:hover {
	border-color: var(--rd-blue);
	color: var(--rd-blue);
}

#MJUHeader.Header .account-menu {
	position: absolute;
	right: 0;
	top: calc(100% + 14px);
	width: 300px;
	max-height: calc(100vh - 120px);
	overflow-y: auto;
	background: #FFFFFF;
	border-radius: 12px;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.18);
	padding: 24px;
	z-index: 500;
}
#MJUHeader.Header .account-menu.toggle-hidden {
	display: none;
}
#MJUHeader.Header .account-menu .title {
	font-family: var(--rd-font);
	margin-bottom: 14px;
}
#MJUHeader.Header .account-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: inherit;
}
#MJUHeader.Header .account-menu ul li {
	margin: 0;
	padding: 0;
}
#MJUHeader.Header .account-menu ul li a {
	display: block;
	padding: 8px 0;
	color: var(--rd-text);
	text-decoration: none;
	font-size: 16px;
}
#MJUHeader.Header .account-menu ul li a:hover {
	color: var(--rd-blue);
}
/* Kind-Punkte des Kundenbereich-Menues (Quelle: dashboardFrameMenu) eingerueckt und kleiner */
#MJUHeader.Header .account-menu ul li.child {
	display: none;
}
#MJUHeader.Header .account-menu ul li.main + li.child {
	margin-top: -15px;
}
#MJUHeader.Header .account-menu ul li.child + li.main {
	margin-top: 10px;
}
#MJUHeader.Header .account-menu ul li.main + li.child a {
	padding-top: 4px;
}
#MJUHeader.Header .account-menu ul li.child a {
	/* Ausrichtung folgt dem Menue (text-align: inherit) - Hierarchie tragen Groesse und Farbe */
	padding: 3px 0;
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-gray);
}
#MJUHeader.Header .account-menu ul li.child a:hover {
	color: var(--rd-blue);
}
#MJUHeader.Header .account-menu ul li.child + li.main a {
	padding-top: 12px;
}
#MJUHeader.Header .account-menu .logout {
	display: inline-block;
	margin-top: 16px;
	background: var(--rd-blue);
	border-radius: 22px;
	padding: 10px 26px;
	text-decoration: none;
}
#MJUHeader.Header .account-menu .logout:hover {
	background: var(--rd-cyan);
}
#MJUHeader.Header {
	overflow: visible;
	z-index: 100;
}
#MJUHeader.Header .Container {
	overflow: visible;
}
#MJUHeader.Header .account-menu {
	z-index: 2147483000;
}
/*#endregion Redesign 2026 - Header/Navigation */


/*#region Redesign 2026 - Hero Startseite */
.home .hero2026 {
	position: relative;
	margin: 0;
	padding: 0;
}
.home .hero2026 .hero-image {
	height: 660px;
	background-size: cover;
	background-position: center;
}
.home .hero2026 .hero-search {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 20000;
	width: 1240px;
	max-width: calc(100% - 80px);
	background: #FFFFFF;
	border-radius: 18px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.22);
	padding: 34px 40px 38px 40px;
	box-sizing: border-box;
}
.home .hero2026 .hero-search-title {
	font-family: var(--rd-font);
	margin: 0 0 22px 0;
	padding: 0;
	text-transform: none;
}
.home .hero2026 .hero-search-fields {
	display: flex;
	align-items: flex-end;
	gap: 24px;
}
.home .hero2026 .hero-search-fields .field {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1 1 0;
	min-width: 0;
}
.home .hero2026 .hero-search-fields .field.location, .home .hero2026 .hero-search-fields .field.model {
	flex: 1.35 1 0;
}
.home .hero2026 .hero-search-fields .field.date, .home .hero2026 .hero-search-fields .field.duration {
	flex: 0.55 1 0;
}
.home .hero2026 .hero-search-fields .field.submit {
	flex: 0 0 auto;
	margin-left: 28px;
}
.home .hero2026 .hero-search-fields .field label {
	font-size: 15px;
	font-weight: 600;
	color: var(--rd-text);
	/*display: flex;
	align-items: center;
	gap: 8px;*/
	display: block;
	margin: 0;
	text-overflow: ellipsis;
	overflow: hidden;
}
.home .hero2026 .hero-search-fields .field .ico {
	width: 18px;
	height: 18px;
	float: left;
	margin: 0 4px 0 0;
	display: block;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.home .hero2026 .field .ico.pin {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Cpath d='M12 21s-7-5.5-7-11a7 7 0 0 1 14 0c0 5.5-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}
.home .hero2026 .field .ico.trailer {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Crect x='2' y='7' width='15' height='8' rx='1'/%3E%3Ccircle cx='9' cy='18' r='2'/%3E%3Cpath d='M17 11h5'/%3E%3C/svg%3E");
}
.home .hero2026 .field .ico.calendar {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.home .hero2026 .field .ico.clock {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 3'/%3E%3C/svg%3E");
}
.home .hero2026 .hero-search-fields .field input[type="text"], .home .hero2026 .hero-search-fields .field input[type="date"], .home .hero2026 .hero-search-fields .field select, .home .hero2026 .hero-search-fields .field .model-select {
	border: 1px solid #000000;
	height: 46px;
	border-radius: 10px;
	padding: 0 16px;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 500;
	color: var(--rd-text);
	text-align: center;
	text-align-last: center;
	background-color: #FFFFFF;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
}
.home .hero2026 .hero-search-fields .field .model-select {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.home .hero2026 .hero-search-fields .field .model-select span, .filter-fields .field .model-select span {
	white-space: nowrap;
	text-align: left;
	text-overflow: ellipsis;
	overflow: hidden;
	max-width: 100%;
}
.home .hero2026 .hero-search-fields .field input:focus, .home .hero2026 .hero-search-fields .field select:focus {
	outline: none;
	border-color: var(--rd-blue);
}
.home .hero2026 .hero-submit {
	height: 46px;
	background: var(--rd-blue);
	border: 0;
	border-radius: 26px;
	padding: 0 34px;
	font-family: var(--rd-font);
	cursor: pointer;
	width: auto;
}
.home .hero2026 .hero-submit:hover {
	background: var(--rd-cyan);
}

.model-panel {
	position: absolute;
	left: 0;
	right: 0;
	top: -75%;
	background: #FFFFFF;
	border-radius: 14px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.22);
	margin: 0;
	display: flex !important;
	max-width: 100%;
	gap: 2%;
	flex-wrap: wrap;
	z-index: 2147483000;
	padding: 3vw 10vw 3vw 3vw !important;
}
.model-panel.toggle-hidden {
	display: none;
}
.model-panel .Textfett {
	font-family: var(--rd-font);
	font-weight: 800;
	color: var(--rd-blue);
	margin-bottom: 30px;
	display: flex;
}
.model-panel .model-option {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 7px 0;
}
.model-panel .model-option label {
	cursor: pointer;
}
.model-panel-footer {
	display: flex;
	width: 109%;
	align-items: center;
	gap: 32px;
	margin-top: 10px;
	margin-right: -9%;
}
.model-panel-footer .More {
	color: var(--rd-blue);
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
}
.model-panel-footer .More:hover {
	color: var(--rd-cyan);
}
.home .hero2026 {
	display: block;
	width: 100%;
	float: none;
}
.home .hero2026 .hero-image {
	width: 100%;
	display: block;
}
.home .hero2026 .hero-search .formSearch {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	background: none;
	display: block;
}
.home .hero2026 .hero-search-fields .field label {
	white-space: nowrap;
}
.home .hero2026 .hero-search-fields .field {
	float: none;
}
.home .hero2026 .field .model-select::after, .stations2026 .filter-fields .field .model-select::after {
	content: '';
	width: 12px;
	height: 12px;
	margin-left: 10px;
	flex: 0 0 auto;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform 0.2s ease;
}
.home .hero2026 .field .model-select.toggle-expanded::after, .stations2026 .filter-fields .field .model-select.toggle-expanded::after {
	transform: rotate(180deg);
}
.model-panel .model-panel-column {
	flex: 1 1 200px;
	min-width: 200px;
}
.model-panel-stationtype, .stations2026 .model-panel-stationtype {
	flex-basis: 100%;
	display: flex;
	align-items: center;
	gap: 22px;
	flex-wrap: wrap;
	margin-top: 6px;
	border-top: 1px solid #E4E4E4;
	padding-top: 16px;
}
.model-panel-stationtype .model-option, .stations2026 .model-panel-stationtype .model-option {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0;
}
.model-panel-stationtype .Textfett, .stations2026 .model-panel-stationtype .Textfett {
	color: var(--rd-text);
	margin: 0;
}
.model-panel-close, .stations2026 .model-panel-close {
	position: absolute;
	top: 18px;
	right: 18px;
	width: 20px;
	height: 20px;
	cursor: pointer;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M5 5l14 14M19 5L5 19'/%3E%3C/svg%3E") center / contain no-repeat;
}
.model-panel .cat-ico {
	width: 36px;
	height: 30px;
	margin-top: -3px;
	margin-right: 10px;
	flex: 0 0 auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.model-panel .cat-ico.cat-open {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 22' fill='none' stroke='%230B4A9B' stroke-width='1.8'%3E%3Cpath d='M2 6v7h16V6M2 6h16'/%3E%3Ccircle cx='10' cy='17' r='2.4'/%3E%3Cpath d='M18 13h8'/%3E%3C/svg%3E");
}
.model-panel .cat-ico.cat-closed {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 22' fill='none' stroke='%230B4A9B' stroke-width='1.8'%3E%3Crect x='2' y='3' width='16' height='10' rx='1'/%3E%3Ccircle cx='10' cy='17' r='2.4'/%3E%3Cpath d='M18 13h8'/%3E%3C/svg%3E");
}
.model-panel .cat-ico.cat-special {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 22' fill='none' stroke='%230B4A9B' stroke-width='1.8'%3E%3Crect x='2' y='3' width='16' height='10' rx='1'/%3E%3Cpath d='M6 8h3M11 8h3'/%3E%3Ccircle cx='10' cy='17' r='2.4'/%3E%3Cpath d='M18 13h8'/%3E%3C/svg%3E");
}
.model-panel .cat-ico.cat-equipment {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 22' fill='none' stroke='%230B4A9B' stroke-width='1.8'%3E%3Crect x='2' y='3' width='16' height='10' rx='1'/%3E%3Cpath d='M10 5.5l1 2 2.2.3-1.6 1.5.4 2.2-2-1-2 1 .4-2.2L6.8 7.8 9 7.5z'/%3E%3Ccircle cx='10' cy='17' r='2.4'/%3E%3Cpath d='M18 13h8'/%3E%3C/svg%3E");
}
.model-panel .model-option label {
	cursor: pointer;
	font-family: var(--rd-font);
}
.model-panel .model-option {
	margin: 20px 0;
}
.model-panel-footer .apply-button {
	margin-left: auto;
	background: var(--rd-blue);
	border-radius: 8px;
	padding: 13px 30px;
	font-family: var(--rd-font);
	cursor: pointer;
}
.model-panel-footer .apply-button:hover {
	background: var(--rd-cyan);
}
.home .hero2026 .field .model-select.toggle-expanded, .stations2026 .filter-fields .field .model-select.toggle-expanded {
	border: 2px solid var(--rd-blue);
	background-color: #FFFFFF;
}
.home .hero2026 .field .model-select.toggle-collapsed:hover, .stations2026 .filter-fields .field .model-select.toggle-collapsed:hover {
	background-color: #FFFFFF;
	border-color: var(--rd-blue);
}
#MJUContent .home .hero2026 input.hero-submit {
	border-radius: 26px !important;
}
#MJUContent .stations2026 input.filter-submit {
	border-radius: 26px !important;
	min-width: 250px;
	width: auto;
	margin: 5% auto 0 auto;
}
/* Suchfelder: hellblaues Kalender-Icon im Abholdatum-Feld entfernen (XD ohne Icon) */
.home .hero2026 .hero-search-fields .field input[type="date"]::-webkit-calendar-picker-indicator, .stations2026 .filter-fields .field input[type="date"]::-webkit-calendar-picker-indicator {
	opacity: 0;
}
/*#endregion Redesign 2026 - Hero Startseite */

/*#region Redesign 2026 - Claim Startseite */
.home .home-claim2026 {
	display: block;
	position: relative;
	z-index: 30;
	text-align: left;
	padding: 90px 150px 0 150px;
	background: #FFFFFF;
	max-width: none;
	width: auto;
	margin: 0;
	box-sizing: border-box;
}
.home .home-claim2026 h1 {
	font-family: var(--rd-font);
	margin: 0;
	padding: 0;
	max-width: 900px;
	text-transform: none;
}
.home .home-claim2026 h1 .brand {
	position: relative;
	display: inline-block;
}
.home .home-claim2026 h1 .brand::after {
	content: " ";
	display: inline-block;
	position: absolute;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	height: 22px;
	width: 340px;
	bottom: -11px;
	left: -5px;
	opacity: 0.8;
}
.home .home-claim2026 .welcome {
	font-family: var(--rd-font);
	margin: 44px 0 0 47%;
	padding: 0;
	max-width: 640px;
}
.home .home-claim2026 .welcome-text {
	font-family: var(--rd-font);
	margin: 14px 0 0 47%;
	padding: 0;
	max-width: 640px;
}
/*#endregion Redesign 2026 - Claim Startseite */


/*#region Redesign 2026 - Footer */
footer.Footer {
	background: var(--rd-blue);
	padding: 70px 0 60px 0;
	margin: 0;
}
footer.Footer .Container {
	display: block;
	max-width: 1800px;
	margin: 0 auto;
	padding: 0 150px;
	height: auto;
	float: none;
	width: auto;
	box-sizing: border-box;
}
footer.Footer .footer-columns {
	display: flex;
	gap: 100px;
	align-items: flex-start;
}
footer.Footer .footer-column {
	float: none;
	margin: 0;
	width: auto;
}
footer.Footer .footer-column.cities {
	margin-left: auto;
	max-width: 440px;
}
footer.Footer .footer-title {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 900;
	color: #C0D8E2;
	margin: 0 0 22px 0;
}
footer.Footer .footer-column ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: block;
}
footer.Footer .footer-column ul.legal {
	margin-top: 28px;
}
footer.Footer .footer-column ul li {
	display: block;
	margin: 0 0 13px 0;
	padding: 0;
	float: none;
	border: 0;
	background: none;
}
footer.Footer .footer-column ul li a {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 500;
	color: #FFFFFF;
	text-decoration: none;
	text-transform: none;
	letter-spacing: 0;
	padding: 0;
}
footer.Footer .footer-column ul li a:hover {
	color: var(--rd-cyan);
}
footer.Footer .footer-cities {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.95;
	color: #FFFFFF;
	margin: 0;
}
footer.Footer .footer-cities a {
	color: #FFFFFF;
	text-decoration: none;
}
footer.Footer .footer-cities a:hover {
	color: var(--rd-cyan);
}
footer.Footer .SocialMedia {
	display: flex;
	align-items: center;
	gap: 14px;
	float: none;
	margin: 36px 0 0 0;
}
footer.Footer .SocialMedia a {
	width: 42px;
	height: 42px;
	border: 2px solid #FFFFFF;
	border-radius: 50%;
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	overflow: hidden;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px 20px;
	display: inline-block;
	box-sizing: border-box;
}
footer.Footer .SocialMedia a:hover {
	border-color: var(--rd-cyan);
}
footer.Footer .SocialMedia a.facebook {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M15 8h3V4h-3c-2.76 0-5 2.24-5 5v3H7v4h3v8h4v-8h3l1-4h-4V9c0-.55.45-1 1-1z'/%3E%3C/svg%3E");
}
footer.Footer .SocialMedia a.instagram {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.2' cy='6.8' r='1.2' fill='%23FFFFFF' stroke='none'/%3E%3C/svg%3E");
}
footer.Footer .copyright {
	margin-top: 30px;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 800;
	color: #FFFFFF;
}
footer.Footer, footer.Footer .Container, footer.Footer .footer-columns, footer.Footer .footer-column {
	text-align: left;
}
/*#endregion Redesign 2026 - Footer */


/*#region Redesign 2026 - Ergebnisseite */
.stations2026,
#Content.site-login {
	display: block;
	background: linear-gradient(180deg, #4FB3E8 0%, #1B62B0 100%);
	padding: 3% 4%;
	box-sizing: border-box;
	position: relative;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.site-login .site-container {
	display: inline-block;
	box-sizing: border-box;
	border-radius: 16px;
	padding: 5%;
	margin: 5% auto;
	text-align: center;
	background: #FFFFFF;
}
.site-login .site-container .shorttext {
	margin: 3% auto;
}
.site-login .site-container .shorttext,
.site-login .site-container .shorttext * {
	text-align: center;
}

#Content.site-contact,
#Content.site-dashboard {
	padding-bottom: 0 !important;
}

.stations2026 .stations-filter {
	background: #FFFFFF;
	border-radius: 0 0 18px 18px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
	padding: 30px 40px;
	margin: -24px -40px 26px -40px;
	position: relative;
	z-index: 300;
}
.stations2026 .stations-filter.toggle-hidden {
	display: none;
}
.stations2026 .formSearch {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	background: none;
	display: block;
	position: relative;
}
.stations2026 .filter-fields {
	display: flex;
	align-items: flex-end;
	gap: 24px;
}
.stations2026 .filter-fields .field {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1 1 0;
	min-width: 0;
	float: none;
}
.stations2026 .filter-fields .field.location, .stations2026 .filter-fields .field.model {
	flex: 1.35 1 0;
}
.stations2026 .filter-fields .field.date, .stations2026 .filter-fields .field.duration, .stations2026 .filter-fields .field.radius {
	flex: 0.55 1 0;
}
.stations2026 .filter-fields .field.submit {
	flex: 0 0 auto;
	margin-left: 28px;
}
.stations2026 .filter-fields .field label {
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 600;
	color: var(--rd-text);
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	white-space: nowrap;
}
.stations2026 .ico {
	width: 18px;
	height: 18px;
	display: inline-block;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	flex: 0 0 auto;
}
.stations2026 .ico.pin {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Cpath d='M12 21s-7-5.5-7-11a7 7 0 0 1 14 0c0 5.5-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}
.stations2026 .ico.trailer {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Crect x='2' y='7' width='15' height='8' rx='1'/%3E%3Ccircle cx='9' cy='18' r='2'/%3E%3Cpath d='M17 11h5'/%3E%3C/svg%3E");
}
.stations2026 .ico.calendar {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.stations2026 .ico.clock {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 3'/%3E%3C/svg%3E");
}
.stations2026 .filter-fields .field input[type="text"], .stations2026 .filter-fields .field input[type="date"], .stations2026 .filter-fields .field select, .stations2026 .filter-fields .field .model-select {
	height: 46px;
	border: 1px solid #ABABAB;
	border-radius: 10px;
	padding: 0 16px;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 500;
	color: var(--rd-text);
	text-align: center;
	text-align-last: center;
	background-color: #FFFFFF;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
}
.stations2026 .filter-fields .field .model-select {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.stations2026 .filter-fields .field input:focus, .stations2026 .filter-fields .field select:focus {
	outline: none;
	border-color: var(--rd-blue);
}
.stations2026 .filter-submit {
	height: 46px;
	background: var(--rd-blue);
	border: 0;
	border-radius: 26px;
	padding: 0 30px;
	cursor: pointer;
	width: auto;
}
.stations2026 .filter-submit:hover {
	background: var(--rd-cyan);
}

.stations2026 .results-split {
	display: flex;
	gap: 28px;
	align-items: stretch;
}
.stations2026 .results-left {
	flex: 0 0 400px;
	min-width: 0;
}
.stations2026 .results-summary {
	background: #FFFFFF;
	border-radius: 14px 14px 0 0;
	padding: 5% 5% 3% 5%;
	border-bottom: 1px solid #E4E4E4;
	position: relative;
	z-index: 20;
}
.stations2026 .results-summary .summary-head {
	font-weight: 900;
	line-height: 1.35;
	color: var(--color-font) !important;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
	position: relative;
	font-size: 16px !important;
}
.stations2026 .results-summary .summary-head .edit {
	position: absolute;
	z-index: 10;
	top: -2px;
	right: -2px;
	margin: 0;
	padding: 0;
	width: 24px;
	height: 24px;
	cursor: pointer;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Cpath d='M17 3l4 4L8 20l-5 1 1-5L17 3z'/%3E%3C/svg%3E") center / contain no-repeat;
	background-size: 20px;
}
.stations2026 .results-summary .summary-row {
	font-size: 15px;
	font-weight: 500;
	color: var(--rd-text);
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 9px 0;
}
.stations2026 #Results {
	background: #FFFFFF;
	border-radius: 0 0 14px 14px;
	overflow: hidden;
}
.stations2026 #Results > .Textfett {
	padding: 3% 5%;
}
.stations2026 .StationsList {
	margin: 0;
	display: block;
	columns: auto;
	column-count: auto;
}
.stations2026 .StationsList .Station {
	break-inside: avoid;
	float: none;
	width: auto;
	height: auto;
	margin: 0;
	padding: 15px 15px 15px 20px;
	border: 0;
	border-top: 1px solid #E4E4E4;
	box-shadow: none;
	border-radius: 0;
}

.stations2026 .StationsList .Station.TrailerOffer {
	margin-top: -1px;
}

.stations2026 .Station .station-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 1%;
}
.stations2026 .Station .station-top .distance {
	font-family: var(--rd-font);
	font-size: 13px;
	font-weight: 600;
	color: var(--rd-gray);
}
.stations2026 .Station .badges, .stations2026 .mapboxgl-popup .badges {
	display: flex;
	gap: 8px;
}
.stations2026 .mapboxgl-popup .badges {
	margin: 0 0 8px 0;
}
.stations2026 .Station .badge,
.stations2026 .mapboxgl-popup .badge {
	border: 1.5px solid var(--rd-cyan);
	color: var(--rd-blue);
	border-radius: 14px;
	padding: 3px 12px;
	font-family: var(--rd-font);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
}
.stations2026 .mapboxgl-popup .badge {
	float: right;
}
.stations2026 .Station .badge.standard,
.stations2026 .mapboxgl-popup .badge.standard {
	border-color: #ABABAB;
	color: var(--rd-gray);
}
.stations2026 .Station .badge.request, .stations2026 .mapboxgl-popup .badge.request {
	border-color: #E8A33D;
	color: #B97A16;
}
.stations2026 .Station .badge.new, .stations2026 .mapboxgl-popup .badge.new {
	border-color: #2FA84F;
	color: #2FA84F;
}
.stations2026 .Station h3 {
	font-weight: 900;
	line-height: 1.35;
	font-size: 16px;
	color: var(--color-font);
	margin: 0 0 4px 0;
	padding: 0;
	text-transform: none;
}
.stations2026 .Station .Address {
	font-size: 14px;
	font-weight: 500;
	color: var(--font-color);
	display: block;
	text-transform: none;
	margin: 0;
}
.stations2026 .Station a.details {
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-blue);
	text-decoration: underline;
}
.stations2026 .Station a.details:hover {
	color: var(--rd-cyan);
}
.stations2026 .Station .station-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 1%;
	gap: 2%;
}
.stations2026 .Station .availability b {
	font-weight: 800;
}
.stations2026 .Station a.Button.station-action, .detail2026 a.Button.station-action, .stations2026 .mapboxgl-popup a.Button.station-action {
	background: var(--rd-blue);
	border-radius: 8px;
	padding: 11px 18px;
	font-family: var(--rd-font);
	text-decoration: none;
	border: 0;
	display: inline-block;
}
.stations2026 .Station a.Button.station-action:hover, .detail2026 a.Button.station-action:hover, .stations2026 .mapboxgl-popup a.Button.station-action:hover {
	background: var(--rd-cyan);
}
.stations2026 .NoTrailers {
	display: block;
	font-size: 16px;
	margin: 0;
	padding: 0 15px 15px 20px;
	border: 0;
	box-shadow: none;
	border-radius: 0;
}
/* Karten-Popup (Pin-Klick): Buttons wie in der Ergebnisliste, gestapelt */
.stations2026 .mapboxgl-popup a.Button.station-action {
	display: block;
	text-align: center;
	margin: 10px 0 0 0;
	padding: 5px 15px;
}
.stations2026 .results-map {
	flex: 1 1 auto;
	min-width: 0;
}
.stations2026 .results-map #map-container {
	height: 100%;
	width: auto;
	float: none;
	margin: 0;
	padding: 0;
}
.stations2026 .results-map .map {
	height: 100%;
	width: auto;
	float: none;
	margin: 0;
	padding: 0;
}
.stations2026 .results-map #map {
	width: 100%;
	height: 100%;
	min-height: 680px;
	border-radius: 16px;
}
.stations2026 .results-map .mapboxgl-canvas {
	border-radius: 16px;
}
/* Texte (CMS-Boilerplates) unterhalb der Karte */
section#Content.site-stations .site-container,
section#Content.site-stations_247 .site-container,
section#Content.site-location_detail .site-container {
	display: flex;
	flex-direction: column;
}
section#Content.site-stations .site-container > .stations2026,
section#Content.site-stations_247 .site-container > .stations2026,
section#Content.site-location_detail .site-container > .stations2026 {
	order: -1;
}
/* Standard-Shorttext unterhalb der Karte: Look wie Startseiten-Sektion Partner werden (rechtsbuendig, Untertitel hellblau oben, Titel dunkelblau mit Bogen) */
/* Shorttext-Sektion wie Startseite Partner werden */
#Content.site-stations article.shorttext,
#Content.site-stations_247 article.shorttext,
#Content.site-location_detail article.shorttext {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	text-align: left;
	padding-left: calc(var(--rd-pad) - 35px);
	padding-right: calc(var(--rd-pad) - 35px);
	box-sizing: border-box;
	width: 100%;
}
#Content.site-stations article.shorttext .Subtitle,
#Content.site-stations_247 article.shorttext .Subtitle,
#Content.site-location_detail article.shorttext .Subtitle {
	order: 1;
	color: var(--rd-cyan);
	margin: 0 0 6px 0;
}
#Content.site-stations article.shorttext .Title,
#Content.site-stations_247 article.shorttext .Title,
#Content.site-location_detail article.shorttext .Title {
	order: 2;
	position: relative;
	color: var(--rd-blue);
	margin: 0 0 30px 0;
}
#Content.site-stations article.shorttext .Title::after,
#Content.site-stations_247 article.shorttext .Title::after,
#Content.site-location_detail article.shorttext .Title::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -15px;
	height: 22px;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	opacity: 0.8;
}
#Content.site-stations article.shorttext .Textnormal,
#Content.site-stations_247 article.shorttext .Textnormal,
#Content.site-location_detail article.shorttext .Textnormal{
	order: 3;
}
#Content.site-stations article.shorttext .Textnormal,
#Content.site-stations article.shorttext .Textnormal p,
#Content.site-stations_247 article.shorttext .Textnormal,
#Content.site-stations_247 article.shorttext .Textnormal p,
#Content.site-location_detail article.shorttext .Textnormal,
#Content.site-location_detail article.shorttext .Textnormal p {
	text-align: left;
}
/* Stichpunktlisten im CMS-Text uebernehmen die Typografie der Absaetze */
#Content.site-stations article.shorttext .Textnormal ul,
#Content.site-stations_247 article.shorttext .Textnormal ul,
#Content.site-location_detail article.shorttext .Textnormal ul {
	font-family: inherit;
	font-size: inherit;
	color: inherit;
	line-height: inherit;
	text-align: left;
	margin: 10px 0 20px 10px;
	padding: 0 0 0 20px;
}
#Content.site-stations article.shorttext .Textnormal ul li,
#Content.site-stations_247 article.shorttext .Textnormal ul li,
#Content.site-location_detail article.shorttext .Textnormal ul li {
	margin: 2px 0;
}
/* Filter als Overlay mit abgedunkeltem Hintergrund (XD Screens 19/20) */
.stations2026 .stations-filter.toggle-visible {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	z-index: 100000;
	border-radius: 18px;
	padding: 10%;
	box-sizing: border-box;
	background: transparent;
	box-shadow: none;
}
.stations2026 .stations-filter.toggle-visible::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: #FFFFFF;
	border-radius: 18px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
	z-index: -1;
}
/* Titel oberhalb der Suche (XD-Vorlage Seite 9); Typografie via zentralem Rollen-Block */
.stations2026 .stations-filter.toggle-visible .filter-title {
	margin: 0 0 20px 0;
	padding: 0;
	text-transform: none;
}
/* Modell-Panel im Overlay ueber die volle Breite (Ergebnisse + Karte) und links oben verankert.
   Nur Desktop (>990px); mobile.css regelt das Panel <=990px als Fullscreen-Sheet.
   formSearch wird static, damit das absolute Panel an der Filterkarte (linke Kante = results-split) haengt;
   Breite ~ results-split (= stations2026 Padding-Box, Padding 4% => 92vw + 5.6px), skaliert mit dem Viewport. */
@media (min-width: 991px) {
	.stations2026 .stations-filter.toggle-visible .formSearch {
		position: static;
	}
	.stations2026 .stations-filter.toggle-visible #start-search-trailer {
		position: absolute;
		left: 0;
		top: 0;
		right: auto;
		width: calc(92vw + 5.6px);
		max-width: none;
	}
}
/* Overlay: Suchfelder vertikal anordnen wie XD-Vorlage Seite 9 (Ort, Umkreis, Modell, Abholdatum|Mietdauer, Button) */
.stations2026 .stations-filter.toggle-visible .filter-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 16px;
	row-gap: 18px;
	align-items: end;
}
.stations2026 .stations-filter.toggle-visible .filter-fields .field.location {
	grid-column: 1 / -1;
	grid-row: 1;
}
.stations2026 .stations-filter.toggle-visible .filter-fields .field.radius {
	grid-column: 1 / 2;
	grid-row: 2;
}
.stations2026 .stations-filter.toggle-visible .filter-fields .field.model {
	grid-column: 1 / -1;
	grid-row: 3;
}
.stations2026 .stations-filter.toggle-visible .filter-fields .field.date {
	grid-column: 1 / 2;
	grid-row: 4;
}
.stations2026 .stations-filter.toggle-visible .filter-fields .field.duration {
	grid-column: 2 / 3;
	grid-row: 4;
}
.stations2026 .stations-filter.toggle-visible .filter-fields .field.submit {
	grid-column: 1 / -1;
	grid-row: 5;
	margin-left: 0;
}
.stations2026 .stations-filter.toggle-visible .filter-fields .field.submit .filter-submit {
	width: 100%;
}
.stations2026 .filter-close {
	position: absolute;
	top: 18px;
	right: 18px;
	width: 20px;
	height: 20px;
	cursor: pointer;
	background: url('../images/redesign2026/icons/close.svg') center / contain no-repeat;
}
/* Maximale Hoehe: Liste + Karte begrenzt aufs Browserfenster, Liste scrollt intern */
.stations2026 .results-split {
	height: calc(100vh - 260px);
	min-height: 570px;
}
.stations2026 .results-left {
	display: flex;
	flex-direction: column;
	min-height: 0;
	position: relative;
}
.stations2026 #Results {
	margin-top: -1px;
	position: relative;
	z-index: 10;
	overflow-y: auto;
	flex: 1 1 auto;
	min-height: 0;
}
.stations2026 .results-map #map {
	min-height: 0;
}
/* Anhaengerliste einer Station in der linken Spalte (XD Screen 04): "Anhaenger waehlen"
   ersetzt die Stationsliste; Kopfkarte (zurueck/Stift/Station/Suchwerte) kommt aus dem
   Tile mit und verdeckt die normale Ergebnis-Zusammenfassung (Wrapper-Klasse show-trailers) */
.stations2026.show-trailers .results-left > .results-summary {
	display: none;
}
.stations2026.show-trailers #Results {
	border-radius: 14px;
	margin-top: 0;
}
.stations2026 .station-trailers-head {
	border-radius: 14px 14px 0 0;
	position: sticky;
	top: 0;
	z-index: 15;
}
.stations2026 .station-trailers-head .trailers-back {
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-blue);
	text-decoration: underline;
	cursor: pointer;
}
.stations2026 .station-trailers-head .trailers-back::before {
	content: '\2190\00a0';
	display: inline-block;
}
.stations2026 .station-trailers-head .summary-row.station-row {
	align-items: flex-start;
	line-height: 1.5;
}
.stations2026 .station-trailers-head .station-info b {
	font-weight: 800;
}
.stations2026 .station-trailers-head .station-info a.details {
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-blue);
	text-decoration: underline;
}
.stations2026 .station-trailers-head .station-info a.details:hover {
	color: var(--rd-cyan);
}
.stations2026 .TrailerOffer .station-top {
	align-items: flex-start;
}
.stations2026 .TrailerOffer .trailer-ico {
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	border: 0;
	border-radius: 50%;
	background: url('../images/redesign2026/icons/trailer.svg') center / 100% no-repeat;
	box-sizing: border-box;
}
.stations2026 .TrailerOffer h3 {
	flex: 1 1 auto;
	margin: 0 12px;
	min-width: 0;
}
.stations2026 .TrailerOffer h3 .plate {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
}
.stations2026 .TrailerOffer .specs {
	font-size: 14px;
	font-weight: 500;
	color: var(--font-color);
	margin: 4px 0 0 54px;
}
.stations2026 .TrailerOffer a.details {
	margin-left: 54px;
}
.stations2026 .TrailerOffer .price {
	font-size: 15px;
	font-weight: 800;
	color: var(--color-font);
}
/* Suchmaske im Anhaenger-Modus (Stift in der Anhaengerlisten-Kopfkarte): Ort und Umkreis
   sind an die Station gebunden und nicht anpassbar; Modell/Datum/Mietdauer bleiben editierbar */
.stations2026.show-trailers .stations-filter .field.location,
.stations2026.show-trailers .stations-filter .field.radius {
	opacity: 0.45;
	pointer-events: none;
}
/* Feinschliff nach XD Screen 04: Specs/Details auf der Titel-Achse (rechts der Icon-Spalte),
   Kennzeichen fett wie der Modellname */
.stations2026 .TrailerOffer .specs {
	margin: 4px 0 4px 54px;
}
.stations2026 .TrailerOffer > a.details {
	margin-left: 54px;
}
.stations2026 .TrailerOffer h3 .plate {
	font-size: 15px;
	font-weight: 800;
	color: var(--color-font);
}
/*#endregion Redesign 2026 - Ergebnisseite */

/*#region Redesign 2026 - Detail-Modals */
.detail2026 {
	display: flex;
	gap: 40px;
	text-align: left;
	box-sizing: border-box;
	max-width: 1140px;
}
.detail2026 .detail-info,
.detail2026 .detail-media {
	flex: 0 0 35%;
	min-height: 250px;
	align-self: flex-start;
	border-radius: 12px;
}
.detail2026 .detail-media {
	background-color: #E9E9E9;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B5B5B5' stroke-width='1.5'%3E%3Crect x='2' y='7' width='15' height='8' rx='1'/%3E%3Ccircle cx='9' cy='18' r='2'/%3E%3Cpath d='M17 11h5'/%3E%3C/svg%3E");
	background-position: center;
	background-size: 110px;
	background-repeat: no-repeat;
}
.detail2026 .detail-body {
	flex: 1 1 auto;
	min-width: 0;
}
.detail2026 h1 {
	font-family: inherit;
	margin: 0 0 6px 0;
	padding: 0;
	text-transform: none;
}
.detail2026 .Headline {
	font-family: inherit;
	float: none;
}
.detail2026 .Textnormal, .detail2026 .Textklein {
	font-family: inherit;
}
.detail2026 .Textfett, .detail2026 .TextkleinFett {
	font-family: inherit;
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-text);
}
.detail2026 a {
	color: var(--rd-blue);
}
.detail2026 a:hover {
	color: var(--rd-cyan);
}
.detail2026 .Address, .detail2026 .Contact, .detail2026 .Trailers, .detail2026 .ServicePoint {
	float: none;
	width: auto;
	margin: 0 0 6% 0;
	display: block;
}
.detail2026 .Contact.Openings table td {
	padding: 2px 0;
}
.detail2026 .Columns {
	display: flex;
	/*gap: 40px;*/
}
.detail2026 .Columns .Column50Left, .detail2026 .Columns .Column50Right {
	float: none;
	width: 50%;
	box-sizing: border-box;
}

.detail2026.trailer .Columns .Column50Left {
	width: 60%;
}
.detail2026.trailer .Columns .Column50Right {
	width: 40%;
}

.detail2026 .images {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
}
.detail2026 .images .image {
	width: 110px;
	height: 72px;
	border-radius: 8px;
	background-size: cover;
	background-position: center;
	display: inline-block;
}
.detail2026 .detail-media.has-images {
	min-height: 0;
	background: none;
}
.detail2026 .detail-media .image-main {
	display: block;
	width: 100%;
	border-radius: 12px;
	overflow: hidden;
	margin: 0;
}
.detail2026 .detail-media .image-main img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 12px;
}
.detail2026 .detail-media .images {
	margin-top: 10px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}
.detail2026 .detail-media .images .image {
	width: auto;
	height: auto;
	aspect-ratio: 3 / 2;
}
.detail2026 .round-button {
	margin-right: 10px;
}
/* Direktaufruf station~/trailer~ (box.php nicht-AJAX): gleiche Detail-Karte im Seitenkontext */
#Content.site-location_detail .box-content.Overlay,
#Content.site-trailer_detail .box-content.Overlay {
	float: none;
	max-width: 1140px !important;
	width: 96%;
	margin: 48px auto;
}
#Content .detail2026,
#Content.site-location,
#Content.site-terms,
#Content.site-privacy,
#Content.site-imprint,
#Content.site-idnow,
#Content.site-paypal,
#Content.site-payment,
#Content.site-24_7_offline {
	padding: 4% 0 8% 0 !important;
}
#Content.site-terms,
#Content.site-privacy,
#Content.site-imprint,
#Content.site-idnow,
#Content.site-paypal,
#Content.site-payment,
#Content.site-24_7_offline {
	max-width: 900px !important;
}
/*#endregion Redesign 2026 - Detail-Modals */


/*#region Redesign 2026 - Registrierung */
.registration2026 {
	display: block;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	background: transparent linear-gradient(214deg, #B1E6FD 0%, #2C6FA2 100%) 0% 0% no-repeat padding-box;
	padding: 5%;
	box-sizing: border-box;
}
.registration2026 .registration-hero {
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
	font-family: var(--rd-font);
}
.registration2026 .registration-hero h1 {
	font-family: inherit;
	margin: 0 0 22px 0;
	padding: 0;
	text-transform: none;
}
.registration2026 .toggle-label {
	font-family: inherit;
	margin-bottom: 16px;
}
.registration2026 .registration-toggle {
	display: inline-flex;
	background: rgba(255, 255, 255, 0.7);
	border-radius: 100px;
	gap: 10px;
	padding: 8px;
}
.registration2026 .registration-toggle .option {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 13px 34px;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
	color: var(--rd-blue);
	text-decoration: none;
	border-radius: 26px;
	text-align: center;
	opacity: 1;

}
.registration2026 .registration-toggle .option.active {
	background: var(--rd-blue);
	color: #FFFFFF;
}
.registration2026 .registration-toggle .option:hover {
	background: var(--rd-cyan) !important;
	color: #FFFFFF !important;
}
.registration2026 .registration-toggle .option .check {
	display: none;
}
.registration2026 .registration-toggle .option.active .check {
	display: inline-block;
	width: 16px;
	height: 16px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l6 6L20 6'/%3E%3C/svg%3E") center / contain no-repeat;
}

.registration2026 .registration2026-content {
	max-width: 1140px;
	margin: 5% auto 0 auto;
	background: #FFFFFF;
	border-radius: 16px;
	box-shadow: 0 10px 36px rgba(0, 0, 0, 0.12);
	padding: 2.5% 5% 5% 5%;
	box-sizing: border-box;
	float: none;
	width: auto;
}
/* Zeilenraster (XD 15/21): Felder paarweise pro Zeile statt zweier Spalten-Stapel */
.registration2026 .registration2026-content fieldset:not(.bg-grey) {
	padding: 0 0 20px 0;
}
.registration2026 .registration2026-content .Field, .registration2026 .registration2026-content .Select, .registration2026 .registration2026-content .description, .registration2026 .registration2026-content #booking .bg-grey {
	max-width: none;
}
.registration2026 .registration2026-content .row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin-bottom: 20px;
}
.registration2026 .registration2026-content .row > * {
	flex: 1 1 0;
	min-width: 0;
}
.registration2026 .registration2026-content .row .flex-row + .flex-row {
	margin: 0;
}
.registration2026 .registration2026-content .row.three > .floating-label:nth-child(3) {
	flex: 1.6 1 0;
}
.registration2026 .registration2026-content .row .pair {
	display: flex;
	gap: 22px;
}
.registration2026 .registration2026-content .row .pair > .floating-label.wide {
	flex: 2.4 1 0;
	min-width: 0;
}
.registration2026 .registration2026-content .row .pair > .floating-label.half {
	flex: 2 1 0;
	min-width: 0;
}
.registration2026 .registration2026-content .row .pair > .floating-label.narrow {
	flex: 1 1 0;
	min-width: 0;
}
.registration2026 .registration2026-content .duty-note {
	text-align: right;
}
.registration2026 .registration-intro {
	display: flex;
	gap: 46px;
}
.registration2026 .registration-intro .introbox {
	flex: 1 1 0;
}
.registration2026 .registration-intro .introbox h3 {
	font-family: inherit;
	margin: 0 0 12px 0;
	text-transform: none;
}
.registration2026 .shorttext .Textnormal,
.registration2026 .shorttext .Textnormal p {
	text-align: center;
}
/*#endregion Redesign 2026 - Registrierung */


/*#region Redesign 2026 - So funktioniert's */
.howto2026 {
	display: block;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 50px var(--rd-pad) 100px var(--rd-pad);
	box-sizing: border-box;
	background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 58%, #E9F5FC 58%, #E9F5FC 100%);
}
.howto2026 .howto-step {
	display: flex;
	gap: 2vw;
	align-items: flex-start;
	max-width: 1400px;
	margin: 0 auto 90px auto;
}
.howto2026 .howto-step:last-child {
	margin-bottom: 0;
}
.howto2026 .howto-step.reverse {
	flex-direction: row-reverse;
}
.howto2026 .step-left {
	flex: 0 0 30vw;
	text-align: left;
}
.howto2026 .step-left h2 {
	font-family: var(--rd-font);
	margin: 30px 0 90px 0;
	padding: 0;
	text-transform: none;
	text-align: left;
}
.howto2026 .step-left h2 .swoosh {
	position: relative;
	display: inline-block;
}
.howto2026 .step-left h2 .swoosh::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -14px;
	height: 14px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' preserveAspectRatio='none'%3E%3Cpath d='M4 14 C 60 3, 140 5, 196 11' fill='none' stroke='%2329ABE2' stroke-width='7' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / 100% 100%;
}
.howto2026 .step-card {
	position: relative;
	background: linear-gradient(135deg, var(--rd-cyan) 0%, var(--rd-blue) 100%);
	border-radius: 24px;
	padding: 72px 44px 46px 44px;
	color: #FFFFFF;
	text-align: center;
	margin: 0 0 0 15%;
}
.howto2026 .step-card .step-icon {
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background-color: var(--rd-blue);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10' cy='8' r='3.5'/%3E%3Cpath d='M4 19c1.2-2.8 3.5-4 6-4 1 0 2 .2 2.8.6'/%3E%3Cpath d='M14 18l2.2 2.2L20.5 16'/%3E%3C/svg%3E");
	background-position: center;
	background-size: 70px;
	background-repeat: no-repeat;
}
.howto2026 .step-card h3 {
	font-family: var(--rd-font);
	margin: 0 0 18px 0;
	text-transform: none;
}
.howto2026 .step-card p {
	font-family: var(--rd-font);
	margin: 0;
}
.howto2026 .step-media {
	flex: 1 1 auto;
	background-color: #E2E2E2;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B5B5B5' stroke-width='1.5'%3E%3Crect x='2' y='7' width='15' height='8' rx='1'/%3E%3Ccircle cx='9' cy='18' r='2'/%3E%3Cpath d='M17 11h5'/%3E%3C/svg%3E");
	background-position: center;
	background-size: 110px;
	background-repeat: no-repeat;
	border-radius: 24px;
}
.howto2026 .howto-step.reverse .step-card {
	margin: 0 15% 0 0;
}
.howto2026 .howto-step.reverse h2 {
	max-width: 80%;
	margin-left: 20%;
}

@media (min-width: 991px) {
    #MJUHeader.Header nav#Navigation ul li.active a {
    	font-weight: 800;
    	color: var(--rd-text);
    }
}
/* Schritt mit zwei gestaffelten Bildern (XD Schritt 2: Bild 2 rechtsbuendig, 55% Breite) */
.howto2026 .step-media.stacked {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2vw;
	background: none;
	min-height: 0;
	border-radius: 0;
}
.howto2026 .step-media.stacked img {
	display: block;
	width: 100%;
	border-radius: 24px;
}
.howto2026 .step-media.stacked img.second {
	width: 55.5%;
}
/* Schritt-Karten-Button (XD "Jetzt registrieren") */
.howto2026 .step-card .step-button {
	display: inline-block;
	margin-top: 26px;
	border: 1px solid #FFFFFF;
	border-radius: 26px !important;
	padding: 12px 34px;
	background: none;
	text-decoration: none;
	font-family: var(--rd-font);
}
.howto2026 .step-card .step-button:hover {
	opacity: 1;
	background-color: #FFFFFF !important;
	color: var(--rd-blue);
}
/* 24_7: Band beginnt bei Schritt 2, Schritt-3-Container (nach band-Claim) komplett auf Band */
#Content.site-24_7,
#Content.site-registration,
#Content.site-registration_organization,
#Content.site-registration_tenant  {
	padding-bottom: 0 !important;
}
#Content.site-24_7 .howto2026 {
	background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 42%, #E9F5FC 42%, #E9F5FC 100%);
	margin-bottom: 0;
}
#Content.site-24_7 .cms-claim.band + .howto2026 {
	background: #E9F5FC;
	padding-top: 40px;
}
/* Video-Boxen: Design-Thumbs enthalten Play+Caption bereits */
/* Play-Button + Titel als Overlays (XD): Normalzustand wie rechte Layout-Box, Hover dimmt NUR das Foto */
#Content.site-24_7 .boxes .box.video a {
	position: relative;
	display: block;
}
#Content.site-24_7 .boxes .box.video .Title {
	position: absolute;
	left: 50%;
	bottom: 6%;
	transform: translateX(-50%);
	z-index: 2;
	display: block;
	float: none;
	width: max-content;
	max-width: 100%;
	min-width: 0;
	height: auto;
	top: auto;
	margin: 0;
	padding: 12px 24px;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.8);
	font-family: var(--rd-font);
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.3;
	color: var(--rd-blue);
	text-transform: uppercase;
	text-align: center;
}
#Content.site-24_7 .boxes .box.video a::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 38%;
	transform: translate(-50%, 50%);
	z-index: 2;
	width: 80px;
	height: 80px;
	margin: 0;
	border-radius: 50%;
	background-color: var(--rd-blue);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E");
	background-position: 58% center;
	background-repeat: no-repeat;
	background-size: 80%;
	display: block;
}
#Content.site-24_7 .boxes .box.video .box_icon img {
	border-radius: 24px;
	width: 100%;
	height: auto;
	max-height: none;
	aspect-ratio: 1080 / 1350;
	object-fit: cover;
	display: block;
	transition: opacity 0.25s ease;
}
#Content.site-24_7 .boxes .box.video a:hover .box_icon img {
	opacity: 0.45;
}
#Content.site-24_7 .boxes .box.video:hover .Title {
	opacity: 1;
} /* Alt-Regel ~5127 blendet Title beim Hover aus - Titel bleibt oben drueber */
/*#Content.site-24_7 .cms-claim.band {
	padding-top: 2%;
	padding-bottom: 5%;
	margin-top: 0;
}*/
#Content.site-24_7 .toggle-content + .cms-claim.band {
	padding-top: 2%;
	padding-bottom: 5%;
}
/* Video-Boxen gross, Thumbs bringen Play+Caption mit */
#Content.site-24_7 .boxes.two {
	display: flex;
	gap: 40px;
	justify-content: center;
	max-width: none;
	margin: 20px calc(50% - 50vw) 50px calc(50% - 50vw);
	padding: 0 var(--rd-pad);
	box-sizing: border-box;
}
#Content.site-24_7 .boxes .box.video {
	flex: 0 0 calc(30%);
	max-width: none;
	width: auto;
	background: none;
	box-shadow: none;
	border: 0;
	padding: 0;
	margin: 0;
}
#Content.site-24_7 .boxes .box.video a::before {
	display: none;
	content: none;
}
#Content.site-24_7 .boxes .box.video .box_icon {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	display: block;
}
/* Einstein-Statement ueber dem Footer (bubble-Claim mit eigenem Motiv) */
#Content.site-24_7 .cms-claim.bubble {
	background-position: calc(50% + 210px) bottom;
	background-size: auto 100%;
	margin-bottom: 0;
	margin-top: 5%;
	min-height: 620px;
}
#Content.site-24_7 .cms-claim.bubble .claim-title {
	margin-top: 100px;
	margin-left: -320px;
	padding: 55px 260px 55px 0;
	background-image: url('../images/redesign2026/sprechblase-offen-180.svg');
}

/*#endregion Redesign 2026 - So funktioniert's */


/*#region Redesign 2026 - Wissensblog + Content-Artikel */

.knowledge2026 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 50px 30px;
	max-width: none;
	margin: 34px auto 70px auto;
	padding: 0 calc(var(--rd-pad) - 35px);
}
.knowledge2026 .knowledge-card {
	min-width: 0;
	display: block;
	text-decoration: none;
}
.knowledge2026 .card-image {
	display: block;
	height: 290px;
	border-radius: 24px;
	background-size: cover;
	background-position: center;
	margin-bottom: 24px;
}
.knowledge2026 .card-image.placeholder {
	background-color: #E2E2E2;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B5B5B5' stroke-width='1.5'%3E%3Crect x='2' y='7' width='15' height='8' rx='1'/%3E%3Ccircle cx='9' cy='18' r='2'/%3E%3Cpath d='M17 11h5'/%3E%3C/svg%3E");
	background-size: 90px;
	background-repeat: no-repeat;
	background-position: center;
}
.knowledge2026 .card-title {
	display: block;
	font-family: var(--rd-font);
	margin-bottom: 12px;
}
.knowledge2026 .card-title:hover {
	color: var(--rd-cyan);
}
.knowledge2026 .card-image {
	text-decoration: none;
}
.knowledge2026 .card-more {
	display: inline-block;
	margin-top: 16px;
}
.knowledge2026 .card-teaser {
	display: block;
}

#Content article.shorttext {
	max-width: none;
	margin: 5% auto;
	float: none;
	width: auto;
}
#Content article.shorttext .Title {
	font-family: inherit;
	text-transform: none;
	margin: 26px 0 18px 0;
}
#Content article.shorttext .Subtitle {
	font-family: inherit;
	text-transform: none;
	margin: 0 0 16px 0;
}
#Content article.shorttext h3 {
	font-family: inherit;
	text-transform: none;
	margin: 26px 0 10px 0;
}
#Content article.shorttext .Textnormal {
	font-family: inherit;
}
#Content .introimage {
	max-width: none;
	margin: 24px auto 0 auto;
}
#Content .introimage img {
	width: 100%;
	border-radius: 24px;
	display: block;
}

#Content .kb-card > article.shorttext:first-of-type {
	margin-top: 0 !important;
}

section#Content.site-knowledge article.shorttext {
	text-align: center;
	padding: 0 calc(var(--rd-pad) - 35px);
}
section#Content.site-knowledge article.shorttext .Title {
	position: relative;
	display: inline-block;
}
section#Content.site-knowledge article.shorttext .Title::after {
	content: '';
	position: absolute;
	left: 8%;
	right: 8%;
	bottom: -12px;
	height: 12px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' preserveAspectRatio='none'%3E%3Cpath d='M4 14 C 60 3, 140 5, 196 11' fill='none' stroke='%2329ABE2' stroke-width='7' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / 100% 100%;
}
/* Detailtext-Baustein (Ratgeber-Detailseiten, XD Screen 22): zentrierte Spalte, dunkle Zwischentitel */
#Content .detailtext2026 {
	display: block;
	float: none;
	max-width: 760px;
	width: auto;
	margin: 0 auto 90px auto;
	padding-top: 100px;
	text-align: left;
	font-family: var(--rd-font);
}
#Content .detailtext2026 .introimage {
	max-width: 625px;
	margin: 0 0 55px 0;
}
#Content .detailtext2026 .introimage img {
	width: 100%;
	border-radius: 24px;
	display: block;
}
#Content .detailtext2026 .Title {
	font-family: inherit;
	text-transform: none;
	margin: 0 0 26px 0;
}
#Content .detailtext2026 .Textnormal {
	font-family: inherit;
}
#Content .detailtext2026 .Textnormal p {
	margin: 0 0 14px 0;
}
#Content .detailtext2026 .Textnormal h3 {
	font-family: inherit;
	text-transform: none;
	margin: 26px 0 4px 0;
}
#Content .detailtext2026 .Textnormal ul {
	margin: 0 0 16px 0;
	padding: 0 0 0 24px;
}
#Content .detailtext2026 .Textnormal ul li {
	margin: 2px 0;
}
#Content .detailtext2026 .Textnormal img {
	border-radius: 24px;
	max-width: 100%;
	height: auto;
}
#Content .detailtext2026 .detail-back {
	margin: 55px 0 0 0;
}
#Content .detailtext2026 .detail-back a {
	display: inline-block;
	border: 1px solid var(--rd-text);
	border-radius: 26px;
	padding: 13px 36px;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-text);
	text-decoration: none;
	background: #FFFFFF;
}
#Content .detailtext2026 .detail-back a:hover {
	border-color: var(--rd-blue);
	color: var(--rd-blue);
}

#Content .detailtext2026 .Textnormal ol {
	margin: 0 0 16px 0;
	padding: 0 0 0 24px;
}
#Content .detailtext2026 .Textnormal ol li {
	margin: 2px 0;
}
/* mehrteiliger Artikel: Zurueck-Schaltflaeche nur am Ende des letzten Bausteins */
#Content .detailtext2026:has(+ .detailtext2026) .detail-back {
	display: none;
}

/*#endregion Redesign 2026 - Wissensblog + Content-Artikel */


/*#region Redesign 2026 - Assets (echte Bilder/Icons) */
.home .hero2026 .field .ico.pin, .stations2026 .ico.pin {
	background-image: url('../images/redesign2026/icons/poi.svg');
}
.home .hero2026 .field .ico.trailer, .stations2026 .ico.trailer {
	background-image: url('../images/redesign2026/icons/trailer.svg');
}
.home .hero2026 .field .ico.calendar, .stations2026 .ico.calendar {
	background-image: url('../images/redesign2026/icons/date.svg');
}
.home .hero2026 .field .ico.clock, .stations2026 .ico.clock {
	background-image: url('../images/redesign2026/icons/time.svg');
}
#MJUHeader.Header .profile .login-pill .icon, #MJUHeader.Header .profile .account-pill .icon {
	background-image: url('../images/redesign2026/icons/user.svg');
}
#MJUHeader.Header .profile.logged .account-pill .icon {
	background-image: url('../images/redesign2026/icons/user_logged.svg');
}
/* Kundenbereich 2026: hochgeladenes Bild statt Icon, gleiche Groesse wie das Icon */
#MJUHeader.Header .profile .account-pill .icon.has-image {
	background-image: none;
}
#MJUHeader.Header .profile .account-pill .icon.has-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.model-panel .cat-ico.cat-open {
	background-image: url('../images/redesign2026/icons/kategorie-offen.svg');
}
.model-panel .cat-ico.cat-closed {
	background-image: url('../images/redesign2026/icons/kategorie-geschlossen.svg');
}
.model-panel .cat-ico.cat-special {
	background-image: url('../images/redesign2026/icons/kategorie-sonder.svg');
}
.model-panel .cat-ico.cat-equipment {
	background-image: url('../images/redesign2026/icons/kategorie-ausstattung.svg');
}
.model-panel-close, .stations2026 .model-panel-close {
	background-image: url('../images/redesign2026/icons/close.svg');
}
.model-panel .model-option label {
	display: flex;
	align-items: flex-start;
	gap: 1px;
}
.model-panel .model-ico {
	display: inline-block;
	width: 44px;
	height: 26px;
	flex: 0 0 auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.howto2026 .step-left h2 .swoosh::after {
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	height: 22px;
	bottom: -15px;
	opacity: 0.8;
}
section#Content.site-knowledge article.shorttext .Title::after {
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	height: 22px;
	bottom: -15px;
	opacity: 0.8;
}
.howto2026 .step-media {
	background-size: cover;
	background-position: center;
	aspect-ratio: 4 / 3;
}

#MJUHeader.Header .account-menu {
	width: 320px;
	padding: 26px 28px;
	text-align: left;
}
#MJUHeader.Header .account-menu .title {
	margin-bottom: 16px;
}
#MJUHeader.Header .account-menu ul li a {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 500;
	padding: 9px 0;
	text-transform: none;
	letter-spacing: 0;
}
#MJUHeader.Header .account-menu .account-info {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-top: 30px;
	border-top: 1px solid #000000;
	flex-wrap: nowrap;
	flex-direction: column;
	align-content: center;
	justify-content: center;
}
#MJUHeader.Header .account-menu .account-info .avatar {
	width: 70px;
	height: 70px;
	flex: 0 0 auto;
	background: url('../images/redesign2026/icons/eingeloggt.svg') center / contain no-repeat;
}
/* Kundenbereich 2026: hochgeladenes Profilbild statt Icon, gleiche Groesse wie das Icon */
#MJUHeader.Header .account-menu .account-info .avatar.has-image {
	background-image: none;
}
#MJUHeader.Header .account-menu .account-info .avatar.has-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#MJUHeader.Header .account-menu .account-info .email {
	font-family: var(--rd-font);
	word-break: break-all;
}
#MJUHeader.Header .account-menu .logout {
	display: inline-block;
	margin-top: 18px;
	background: var(--rd-blue);
	border-radius: 22px;
	padding: 11px 30px;
	text-decoration: none;
	font-family: var(--rd-font);
	text-transform: none;
}
#MJUHeader.Header .profile {
	overflow: visible;
}
#MJUHeader.Header .account-menu {
	box-sizing: border-box;
}
/* Admin-Dropdown: Pill wie Login-Pill, keine Alt-Hintergruende, kompaktere Abstaende */
#MJUHeader.Header .profile {
	background: none;
	height: auto;
	margin: 0;
	padding: 0;
}
#MJUHeader.Header .profile .account-pill .user {
	background: none;
	padding: 0;
	margin: 0;
	height: auto;
	line-height: 1;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 500;
	color: var(--rd-text);
}
#MJUHeader.Header .profile .account-pill .icon, #MJUHeader.Header .profile .account-pill .arrow {
	background-color: transparent;
}
#MJUHeader.Header .account-menu {
	padding: 15% 10%;
	width: 300px;
	text-align: center;
}
#MJUHeader.Header .account-menu .title {
	margin-bottom: 10px;
}
#MJUHeader.Header .account-menu ul li a {
	padding: 15px 0;
	background: none;
	height: auto;
	line-height: 1.44;
}
#MJUHeader.Header .account-menu .logout {
	min-width: 200px !important;
	margin: 5% auto 0 auto;
}
/* Einheitliche Abrundung aller blauen Buttons */
.model-panel-footer .apply-button, .stations2026 .model-panel-footer .apply-button, .stations2026 .Station a.Button.station-action, .detail2026 a.Button.station-action, .stations2026 .mapboxgl-popup a.Button.station-action, #MJUHeader.Header .account-menu .logout, .registration2026 .registration2026-content .Button, .howto2026 .Button {
	border-radius: 26px !important;
}
/*#endregion Redesign 2026 - Assets (echte Bilder/Icons) */


/*#region Redesign 2026 - Anhaengerflotte */
.fleet2026 {
	display: block;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: -24px !important;
}
.fleet2026 .fleet-hero {
	display: flex;
	align-items: flex-start;
	gap: 0;
	background: #FFFFFF;
	padding: 20px 150px 0 0;
	max-width: none;
}
.fleet2026 .fleet-hero-image {
	flex: 0 0 auto;
	width: 51.1vw;
	max-width: 982px;
	margin-left: -8.75vw;
	margin-right: -13vw;
	align-self: flex-start;
}
.fleet2026 .fleet-hero-image img {
	width: 100%;
	/*max-width: none;*/
	max-width: 1980px;
	display: block;
}
.fleet2026 .fleet-hero-text {
	flex: 1 1 auto;
	max-width: 850px;
	align-self: center;
	margin-left: 10%;
}
.fleet2026 .fleet-hero-text h1 {
	font-family: var(--rd-font);
	margin: 0 0 30px 0;
	padding: 0;
	text-transform: none;
	text-align: left;
	max-width: 750px;
}
.fleet2026 .fleet-hero-text h1 .swoosh {
	position: relative;
	display: inline-block;
}
.fleet2026 .fleet-hero-text h1 .swoosh::after {
	content: '';
	position: absolute;
	left: 5px;
	right: 0;
	bottom: -8px;
	height: 22px;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	opacity: 0.8;
}
.fleet2026 .fleet-hero-text p {
	font-family: var(--rd-font);
	margin: 0 0 0 11vw;
}
.fleet2026 .fleet-models {
	background: linear-gradient(160deg, var(--rd-cyan) 8%, var(--rd-blue) 78%);
	padding: 60px var(--rd-pad) 90px var(--rd-pad);
	max-width: none;
	margin: 0;
}
.fleet2026 .fleet-search {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 26px;
	margin-bottom: 56px;
}
.fleet2026 .fleet-search .label {
	font-family: var(--rd-font);
}
.fleet2026 .fleet-search .field {
	position: relative;
	display: inline-block;
}
.fleet2026 .fleet-search input {
	width: 340px;
	height: 48px;
	border: 0;
	border-radius: 26px;
	padding: 0 52px 0 24px;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 500;
	color: var(--rd-text);
	text-align: center;
	background: #FFFFFF;
	box-sizing: border-box;
}
.fleet2026 .fleet-search input:focus {
	outline: none;
}
.fleet2026 .fleet-search .lens {
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E") center / contain no-repeat;
}
.fleet2026 .fleet-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	max-width: none;
	margin: 0;
}
.fleet2026 .fleet-card {
	background: #FFFFFF;
	border-radius: 24px;
	padding: 40px 40px 32px 40px;
	display: flex;
	flex-direction: column;
	text-align: left;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
}
.fleet2026 .fleet-card .illu {
	width: 100%;
	height: 250px;
	object-fit: contain;
	margin-bottom: 22px;
	padding-bottom: 22px;
	border-bottom: 1px solid #E3E3E3;
	box-sizing: content-box;
}
.fleet2026 .fleet-card h3 {
	font-family: var(--rd-font);
	margin: 0 0 20px 0;
	text-transform: none;
}
.fleet2026 .fleet-card .description {
	font-family: var(--rd-font);
	margin-bottom: 24px;
}
.fleet2026 .fleet-card .fleet-button {
	margin: auto auto 0 auto;
	align-self: flex-end;
	display: inline-block;
	background: var(--rd-blue);
	border-radius: 26px !important;
	padding: 15px 32px;
	font-family: var(--rd-font);
	text-decoration: none;
}
.fleet2026 .fleet-card .listed {
	font-family: var(--rd-font);
	font-size: 18px;
	font-weight: 800;
	color: var(--rd-text);
	margin-bottom: 24px;
}
.fleet2026 .fleet-card .fleet-button:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}


/* Ratgeber-Teaser "Das richtige Anhaengermodell fuer deine Anwendung" (XD Screen 10 unten) */
.fleet2026 .fleet-advice {
	background: #FFFFFF;
	padding: 130px var(--rd-pad) 70px var(--rd-pad);
	max-width: none;
	margin: 0;
}
.fleet2026 .fleet-advice h2 {
	font-family: var(--rd-font);
	margin: 0 0 70px 0;
	padding: 0;
	text-transform: none;
	text-align: left;
}
.fleet2026 .fleet-advice h2 .swoosh, .fleet2026 .fleet-advice h2 u {
	position: relative;
	display: inline-block;
	text-decoration: none;
}
.fleet2026 .fleet-advice h2 .swoosh::after, .fleet2026 .fleet-advice h2 u::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -10px;
	height: 22px;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	opacity: 0.8;
}
.fleet2026 .advice-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	align-items: start;
}
.fleet2026 .advice-card {
	display: flex;
	flex-direction: column;
	text-align: left;
}
.fleet2026 .advice-card:nth-child(2) {
	margin-top: 96px;
}
.fleet2026 .advice-card .media {
	display: block;
	margin-bottom: 28px;
}
.fleet2026 .advice-card .media img {
	width: 100%;
	display: block;
	border-radius: 24px;
	aspect-ratio: 490 / 358;
	object-fit: cover;
}
.fleet2026 .advice-card h3 {
	font-family: var(--rd-font);
	margin: 0 0 16px 0;
	text-transform: none;
}
.fleet2026 .advice-card h3 a {
	color: inherit;
	text-decoration: none;
}
.fleet2026 .advice-card h3 a:hover {
	color: var(--rd-cyan);
}
.fleet2026 .advice-card .teaser p {
	margin: 0;
}
.fleet2026 .advice-card .teaser {
	font-family: var(--rd-font);
	margin-bottom: 18px;
}
/*#endregion Redesign 2026 - Anhaengerflotte */


/*#region Redesign 2026 - Kontaktformular */
.contact2026 {
	display: block;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: -24px !important;
	background: linear-gradient(115deg, #4A9FD4 0%, #A9DAF4 100%);
	padding: 70px 40px 170px 40px;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
}
.contact2026 .contact-hero {
	max-width: 990px;
	margin: 0 auto 44px auto;
	text-align: center;
	position: relative;
	z-index: 2;
}
.contact2026 .contact-hero h1 {
	font-family: var(--rd-font);
	margin: 0 0 22px 0;
	padding: 0;
	text-transform: none;
}
.contact2026 .contact-hero p {
	font-family: var(--rd-font);
	margin: 0;
}
/* Hero kommt aus CMS-Boilerplates (article.shorttext) - Absatz zentrieren wie XD 13 (analog Registrierung) */
.contact2026 .contact-hero .shorttext .Textnormal,
.contact2026 .contact-hero .shorttext .Textnormal p {
	text-align: center;
}
.contact2026 .contact-card {
	position: relative;
	z-index: 2;
	max-width: 1140px;
	margin: 0 auto;
	background: #FFFFFF;
	border-radius: 16px;
	box-shadow: 0 10px 36px rgba(0, 0, 0, 0.15);
	padding: 40px 48px 44px 48px;
	box-sizing: border-box;
}
.contact2026 .contact-card.sent {
	text-align: center;
}
.contact2026 .contact-card.sent h3 {
	font-family: var(--rd-font);
	margin: 0;
}
.contact2026 .contact-card .card-title {
	font-family: var(--rd-font);
	margin: 0 0 22px 0;
	text-transform: none;
}
.contact2026 .contact-card .row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin-bottom: 20px;
}
.contact2026 .contact-card .row > * {
	flex: 1 1 0;
	min-width: 0;
}
.contact2026 .contact-card .row.three > .floating-label:nth-child(3) {
	flex: 1.6 1 0;
}
.contact2026 .contact-card .row.submit {
	justify-content: flex-end;
	margin-bottom: 0;
}
.contact2026 .contact-card .row.submit .Button {
	flex: 0 0 auto;
}
/*.contact2026 .contact-card input.Field, .contact2026 .contact-card select, .contact2026 .contact-card textarea.Fieldtextarea {
	border: 0;
	border-radius: 10px;
	background: #F0F0F2;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 500;
	color: var(--rd-text);
	box-sizing: border-box;
	width: 100%;
}
.contact2026 .contact-card textarea.Fieldtextarea {
	min-height: 220px;
	resize: vertical;
}*/
.contact2026 .contact-card input.Field, .contact2026 .contact-card select, .contact2026 .contact-card textarea.Fieldtextarea {
	max-width: none;
}
.contact2026 .contact-card .Button {
	background: var(--rd-blue);
	border: 0;
	border-radius: 26px !important;
	padding: 13px 34px;
	font-family: var(--rd-font);
	cursor: pointer;
}
.contact2026 .contact-card .Button:hover {
	background: var(--rd-cyan);
}
.contact2026 .contact-card .row > span.error {
	flex: 1 1 100%;
	order: 10;
	margin: 0;
	font-size: 13px;
	line-height: 18px;
}
.contact2026 .contact-einstein {
	position: absolute;
	left: -80px;
	bottom: 0;
	width: 700px;
	height: 700px;
	background: url(../images/redesign2026/einstein-laptop.png) no-repeat bottom left / contain;
	pointer-events: none;
	z-index: 1;
}
/*#endregion Redesign 2026 - Kontaktformular */


/*#region Redesign 2026 - FAQ */
section#Content:is(.site-faq, .site-24_7) {
	padding-bottom: 80px;
}
section#Content:is(.site-faq, .site-24_7) article.shorttext {
	max-width: none;
	margin: 0 auto;
	float: none;
	width: auto;
}
section#Content:is(.site-faq, .site-24_7) article.shorttext h1.Title {
	font-family: var(--rd-font);
	text-align: center;
	text-transform: none;
	position: relative;
	padding: 0 0 26px 0;
	margin: 30px 0 30px 0;
}
section#Content:is(.site-faq, .site-24_7) article.shorttext h1.Title::after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	width: 150px;
	height: 22px;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	opacity: 0.8;
}
section#Content:is(.site-faq, .site-24_7) article.shorttext .Subtitle {
	font-family: var(--rd-font);
	text-align: center;
	text-transform: none;
	max-width: 640px;
	margin: 0 auto 30px auto;
}
section#Content:is(.site-faq, .site-24_7) article.shorttext h2.Title {
	font-family: var(--rd-font);
	text-align: left;
	text-transform: none;
	position: static;
	padding: 0;
	max-width: 1015px;
	margin: 70px auto 14px auto;
}
section#Content:is(.site-faq, .site-24_7) article.shorttext h2.Title::after {
	display: none;
}
/* Akkordeon-/Toggle-Styles: ZENTRAL in Region "Akkordeon/Toggle (zentral)" am Dateiende - hier keine Toggle-Regeln anlegen! */
/*#endregion Redesign 2026 - FAQ */


/*#region Redesign 2026 - Partner-Landingpage */
.partner2026 {
	display: block;
}
.partner2026 .Button {
	display: inline-block;
	background: var(--rd-blue);
	border: 0;
	border-radius: 26px !important;
	padding: 14px 36px;
	font-family: var(--rd-font);
	text-decoration: none;
	cursor: pointer;
	text-align: center;
}
.partner2026 .Button:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}
.partner2026 .partner-cta {
	text-align: center;
	margin: 44px 0 0 0;
}
.partner2026 .partner-cta.left {
	text-align: left;
	margin-top: 30px;
}
.partner2026 .swoosh {
	position: relative;
	white-space: nowrap;
}
.partner2026 .swoosh::after {
	content: "";
	position: absolute;
	left: -5px;
	right: 0;
	bottom: -15px;
	height: 22px;
	width: 250px;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	opacity: 0.8;
}
.partner2026 .partner-kicker {
	font-family: var(--rd-font);
	margin: 0 0 14px 0;
}
.partner2026 .partner-headline {
	font-family: var(--rd-font);
	text-align: center;
	text-transform: none;
	margin: 0 0 50px 0;
	padding: 0;
}
.partner2026 .partner-headline.left {
	text-align: left;
}

.partner2026 .partner-hero {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: -24px !important;
	min-height: 540px;
	background: url('../images/redesign2026/partner/hero-partner.jpg') center / cover no-repeat;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	padding: 60px 40px;
}
.partner2026 .partner-hero .hero-card {
	background: #FFFFFF;
	border-radius: 24px;
	box-shadow: 0 10px 36px rgba(0, 0, 0, 0.18);
	max-width: 620px;
	padding: 56px 60px;
	margin-left: 6vw;
	box-sizing: border-box;
}
.partner2026 .partner-hero h1 {
	font-family: var(--rd-font);
	text-transform: none;
	margin: 0 0 40px 0;
	padding: 0;
}
.partner2026 .partner-hero .Button {
	padding: 15px 44px;
}

.partner2026 .partner-args {
	padding: 120px 0 90px 0;
}
.partner2026 .args-grid {
	display: flex;
	gap: 34px;
	align-items: stretch;
}
.partner2026 .arg-card {
	flex: 1 1 0;
	border: 2px solid var(--rd-blue);
	border-radius: 24px;
	padding: 0 34px 30px 34px;
	box-sizing: border-box;
}
.partner2026 .arg-ico {
	width: 130px;
	height: 130px;
	margin: -65px auto 6px auto;
}
.partner2026 .arg-ico img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.partner2026 .arg-card h3 {
	font-family: var(--rd-font);
	text-align: center;
	text-transform: none;
	margin: 12px 0 22px 0;
}
.partner2026 .arg-card p {
	font-family: var(--rd-font);
	margin: 0;
}

#Content.site-partner .partner2026 section {
	max-width: none;
	margin-left: calc(var(--rd-pad) - 35px);
	margin-right: calc(var(--rd-pad) - 35px);
}
#Content.site-partner .infopanels2026.plain {
	padding-left: calc(var(--rd-pad) - 35px);
	padding-right: calc(var(--rd-pad) - 35px);
}
.partner2026 .partner-products {
	padding: 40px 0 30px 0;
}
.partner2026 .product-card {
	position: relative;
	z-index: 10;
	border-radius: 48px;
	padding: 64px 70px;
	margin: 0 0 60px 0;
	color: #FFFFFF;
	box-sizing: border-box;
}
.partner2026 .product-card * {
	position: relative;
	z-index: 10;
}
.partner2026 .product-card.dark {
	background: transparent linear-gradient(24deg, #009BDD 0%, #113F7E 100%) 0% 0% no-repeat padding-box;
}
.partner2026 .product-card.dark:before {
	content: ' ';
	position: absolute;
	z-index: 1;
	right: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url(../images/backgrounds/product-dark.png);
	background-repeat: no-repeat;
	background-size: auto;
	background-position: right top;
	border-radius: 48px;
}
.partner2026 .product-card.light {
	background: transparent linear-gradient(311deg, #113F7E 0%, #00A9EB 100%) 0% 0% no-repeat padding-box;
}
.partner2026 .product-card.light:before {
	content: ' ';
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url(../images/backgrounds/product-light.png);
	background-repeat: no-repeat;
	background-size: auto;
	background-position: left top;
	border-radius: 48px;
}
.partner2026 .pc-columns {
	display: flex;
	gap: 50px;
	align-items: center;
}
.partner2026 .pc-columns .pc-text {
	flex: 1.1 1 0;
	min-width: 0;
}
.partner2026 .pc-columns .pc-img {
	flex: 1 1 0;
	min-width: 0;
	text-align: center;
}
.partner2026 .pc-columns .pc-img img {
	max-width: 100%;
	height: auto;
}
.partner2026 .pc-kicker {
	font-family: var(--rd-font);
	margin: 0 0 14px 0;
}
.partner2026 .product-card h3 {
	font-family: var(--rd-font);
	text-transform: none;
	margin: 0 0 26px 0;
}
.partner2026 .product-card p {
	font-family: var(--rd-font);
	margin: 0 0 22px 0;
}
.partner2026 .pc-price-title {
	font-family: var(--rd-font);
	text-transform: none;
	margin: 40px 0 24px 0;
}
.partner2026 .price-row {
	display: flex;
	gap: 26px;
	flex-wrap: wrap;
}
.partner2026 .price-card {
	background: #FFFFFF;
	border-radius: 24px;
	padding: 28px 30px;
	flex: 1 1 0;
	min-width: 170px;
	box-sizing: border-box;
	color: var(--rd-blue);
}
.partner2026 .price-card .pr-name {
	font-family: var(--rd-font);
	margin: 0 0 10px 0;
}
.partner2026 .price-card .pr-scope {
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 600;
	margin: 0 0 16px 0;
}
.partner2026 .price-card .pr-price {
	font-family: var(--rd-font);
	font-size: 46px;
	font-weight: 800;
	line-height: 1;
	margin: 0 0 8px 0;
}
.partner2026 .price-card .pr-price .pr-currency {
	font-size: 22px;
	font-weight: 800;
}
/* Paket XL: Preisangabe "auf Anfrage" statt Zahl - kleinere Stufe, damit sie in die Karte passt */
.partner2026 .price-card .pr-price.small {
	font-size: 26px;
}
.partner2026 .price-card .pr-period {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	margin: 0;
}
.partner2026 .price-row.single {
	max-width: 260px;
}
.partner2026 .price-row.single .pr-scope {
	margin: 12px 0 0 0;
}
.partner2026 .price-note {
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 600;
	color: #FFFFFF;
	text-align: right;
	margin: 14px 0 0 0;
}
/* Modulkarte: Fussnote steht in der schmalen Textspalte - dort linksbuendig unter der Preiskarte */
.partner2026 .pc-text .price-note {
	text-align: left;
}
.partner2026 .product-card .Button {
	background: var(--rd-blue);
	border: 1px solid #FFFFFF;
	display: inline-block;
}
.partner2026 .product-card .Button:hover {
	background: var(--rd-cyan);
}

.partner2026 .partner-network {
	padding: 50px 0 40px 0;
}
.partner2026 .network-grid {
	display: flex;
	gap: 60px;
	align-items: flex-start;
}
.partner2026 .net-img {
	flex: 1 1 0;
	min-width: 0;
	align-self: start;
}
.partner2026 .net-img img {
	width: 100%;
	max-width: 560px;
	height: auto;
	margin-top: 15%;
}
.partner2026 .net-content {
	flex: 1.1 1 0;
	min-width: 0;
}
.partner2026 .net-content h3 {
	font-family: var(--rd-font);
	text-transform: none;
	margin: 0 0 16px 0;
}
.partner2026 .net-content p {
	font-family: var(--rd-font);
	margin: 0 0 24px 0;
}
.partner2026 .net-accordions {
	border-top: 1px solid #D9D9D9;
	margin: 0 0 26px 0;
}
.partner2026 .net-benefits {
	margin-top: 6px;
}

.partner2026 .partner-branding {
	padding: 50px 0 100px 0;
}
.partner2026 .branding-grid {
	display: flex;
	gap: 0;
	align-items: center;
}
.partner2026 .branding-box {
	flex: 1 1 0;
	min-width: 0;
	background: #EAF6FC;
	border-radius: 24px;
	padding: 60px 120px 60px 56px;
	box-sizing: border-box;
	margin-right: -70px;
}
.partner2026 .branding-box p {
	font-family: var(--rd-font);
	margin: 0 0 24px 0;
}
.partner2026 .branding-img {
	flex: 1.15 1 0;
	min-width: 0;
	position: relative;
	z-index: 2;
}
.partner2026 .branding-img img {
	width: 100%;
	height: auto;
	border-radius: 24px;
	display: block;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
}

@media (max-width: 1100px) {
    .partner2026 .args-grid, .partner2026 .pc-columns, .partner2026 .network-grid, .partner2026 .branding-grid {
    	flex-direction: column;
    }
    .partner2026 .args-grid {
    	gap: 90px;
    }
    .partner2026 .branding-box {
    	margin-right: 0;
    	padding: 44px 36px;
    }
    .partner2026 .partner-hero .hero-card {
    	margin-left: 0;
    }
}
.partner2026 section {
	text-align: left;
}
.partner2026 .price-card {
	text-align: left;
}
/* CMS-Container in Netzwerk/Branding (Redesign 2026, Bausteine statt Hardcode) */
.partner2026 .net-content article.shorttext, .partner2026 .branding-box article.shorttext {
	max-width: none;
	margin: 0 0 10px 0;
}
/*#endregion Redesign 2026 - Partner-Landingpage */


/*#region Redesign 2026 - CMS-Textbausteine */
/* Vorschau: demo.html (Textsite 'demo'). Gilt global fuer alle CMS-Seiten mit section#Content.
   shorttext ist bereits in der Region "Wissensblog + Content-Artikel" gestylt. */

/* Inhaltsseiten: volle Fensterbreite (100%, Full-HD) - hebt section { max-width: 1400px } gezielt auf */
section#Content:has(article.shorttext, article.introtext,
.boxes,
.downloads, section.cms-hero, h2.toggle[data-group="accordeon"],
.knowledge2026, .cms-claim, .cms-teaser,
.infopanels2026, .howto2026) {
	max-width: none;
	padding-bottom: 40px;
}
/* Gesamthintergrund weiss wie im XD-Layout (statt Alt-Grau #ebebeb) */
body {
	background-color: #FFFFFF;
}

/* --- introtext: Einleitung mit Infokasten --- */
#Content article.introtext {
	float: none;
	width: auto;
	max-width: none;
	margin: 30px auto 50px auto;
	padding: 0;
	display: flex;
	gap: 40px;
	align-items: flex-start;
	background: none;
	font-family: var(--rd-font);
}
#Content article.introtext .introtextcontainer {
	float: none;
	width: auto;
	height: auto;
	flex: 1 1 auto;
	order: 1;
	margin: 0;
	padding: 0;
}
#Content article.introtext .textcontent {
	float: none;
	position: static;
	top: auto;
	height: auto;
	z-index: auto;
	width: 320px;
	flex: 0 0 320px;
	order: 2;
	margin: 8px 0 0 0;
	padding: 0;
	justify-content: flex-start;
	box-sizing: border-box;
}
#Content article.introtext .textcontent.red {
	background: #EAF4FB;
	border-radius: 24px;
	padding: 26px 28px;
}
#Content article.introtext .textcontent.red * {
	color: var(--rd-blue);
}
#Content article.introtext .textcontent * {
	font-size: 15px;
	line-height: 1.7;
}
#Content article.introtext .textcontent .Introtitle {
	font-family: inherit;
	text-transform: none;
	margin: 0 0 10px 0;
	padding: 0;
}
#Content article.introtext .textcontent .Textnormal {
	font-family: inherit;
}
#Content article.introtext .introtextcontainer .Title {
	font-family: inherit;
	text-transform: none;
	margin: 0 0 18px 0;
	padding: 0;
}
#Content article.introtext .introtextcontainer .Textnormal {
	font-family: inherit;
}
@media (max-width: 900px) {
    #Content article.introtext {
    	flex-wrap: wrap;
    }
    #Content article.introtext .textcontent {
    	flex: 1 1 100%;
    	width: auto;
    }
}

/* --- box: Karten-Raster --- */
#Content .boxes {
	float: none;
	width: auto;
	max-width: none;
	margin: 20px auto 50px auto;
	display: flex;
	flex-wrap: wrap;
	gap: 28px;
	justify-content: center;
}
#Content .boxes .box {
	float: none;
	width: auto;
	margin: 0;
	padding: 30px 26px;
	flex: 1 1 240px;
	max-width: 340px;
	min-width: 220px;
	box-sizing: border-box;
	background: #FFFFFF;
	border: 1px solid #E4E9EF;
	border-radius: 24px;
	box-shadow: 0 10px 26px rgba(17, 63, 126, 0.08);
	text-align: center;
	overflow: visible;
	position: relative;
}
#Content .boxes.two .box, #Content .boxes.four .box {
	width: auto;
	margin: 0;
}
#Content .boxes .box a, #Content .boxes .box a.background {
	position: static;
	display: block;
	height: auto;
	padding: 0;
	background: none;
	text-decoration: none;
}
#Content .boxes .box a.background::before, #Content .boxes .box .background::before {
	display: none;
}
#Content .boxes .box .box_icon {
	position: static;
	float: none;
	width: 72px;
	height: 72px;
	max-height: none;
	margin: 0 auto 18px auto;
	padding: 0;
	transform: none;
	display: flex;
	align-items: center;
	justify-content: center;
}
#Content .boxes .box .box_icon img {
	width: 64px;
	height: 64px;
	object-fit: contain;
	border-radius: 15px;
	margin: auto;
}
#Content .boxes .box .Title {
	float: none;
	width: auto;
	font-family: inherit;
	text-transform: none;
	margin: 0 0 10px 0;
	padding: 0;
}
#Content .boxes .box .Subtitle {
	float: none;
	width: auto;
	font-family: inherit;
	text-transform: none;
	margin: 0 0 14px 0;
	padding: 0;
}
#Content .boxes .box a.link {
	display: inline-block;
	width: auto;
	margin: 6px 0 0 0;
	padding: 9px 22px;
	background: var(--rd-blue);
	border-radius: 26px;
}
#Content .boxes .box a.link:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}
#Content .boxes .box a.link::after {
	content: '';
	margin: 0;
}

/* Video-Box: Play-Kreis statt Alt-Overlay */
#Content .boxes .box.video::before {
	content: none;
}
#Content .boxes .box.video a::before {
	content: '';
	display: block;
	width: 64px;
	height: 64px;
	margin: 0 auto 16px auto;
	border-radius: 50%;
	background-color: var(--rd-cyan);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E");
	background-position: 55% center;
	background-repeat: no-repeat;
	background-size: 26px;
}
#Content .boxes .box.video .box_icon {
	width: 100%;
	height: auto;
}
#Content .boxes .box.video .box_icon img {
	width: 100%;
	height: 120px;
	object-fit: cover;
	border-radius: 24px;
}
#Content .boxes .box.video .Title {
	position: static;
	float: none;
	display: block;
	width: auto;
	min-width: 0;
	height: auto;
	top: auto;
	bottom: auto;
	left: auto;
	z-index: auto;
	transform: none;
	padding: 0;
	margin: 12px 0 0 0;
	background: none;
	font-family: inherit;
	text-transform: none;
}
#Content .boxes .box.video a:hover .Title {
	color: var(--rd-cyan);
}

/* Akkordeon-/Toggle-Styles: ZENTRAL in Region "Akkordeon/Toggle (zentral)" am Dateiende - hier keine Toggle-Regeln anlegen! */

/* --- download / download.directory: Linkliste mit Icon --- */
#Content .downloads {
	float: none;
	width: auto;
	max-width: none;
	margin: 20px auto 50px auto;
	padding: 0;
	list-style: none;
	font-family: var(--rd-font);
}
#Content .downloads .Download-Link {
	list-style: none;
	float: none;
	width: auto;
	margin: 0;
	padding: 16px 6px 16px 42px;
	border-bottom: 1px solid #D9D9D9;
	position: relative;
	box-sizing: border-box;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23113F7E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12'/%3E%3Cpath d='M7 11l5 5 5-5'/%3E%3Cpath d='M4 20h16'/%3E%3C/svg%3E") 6px 19px / 20px 20px no-repeat;
}
#Content .downloads .Download-Link a.download {
	font-family: inherit;
	font-size: 16px;
	font-weight: 800;
	color: var(--rd-blue);
	text-decoration: none;
	background: none;
	padding: 0;
}
#Content .downloads .Download-Link a.download:hover {
	color: var(--rd-cyan);
}
#Content .downloads .Download-Link .description {
	font-family: inherit;
	margin-top: 4px;
}
#Content .downloads .Download-Link::before {
	content: none;
}
#Content .downloads .Download-Link:hover {
	color: inherit;
	text-decoration: none;
}

/* --- product: Produktkarte --- */
#Content .boxes .box.product {
	text-align: center;
	padding: 26px 24px;
}
#Content .boxes .box.product .container {
	position: static;
	width: auto;
	height: auto;
}
#Content .boxes .box.product .image {
	display: block;
	width: 100%;
	height: 150px;
	object-fit: contain;
	margin: 0 auto 14px auto;
	box-shadow: none;
	border-radius: 10px;
}
#Content .boxes .box.product .title-inline {
	display: none;
}
#Content .boxes .box.product .content {
	position: static;
	display: block;
	opacity: 1;
	visibility: visible;
	transform: none;
	background: none;
	width: auto;
	height: auto;
	padding: 0;
	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
	line-height: 1.5;
	text-align: center;
}
#Content .boxes .box.product .content h2 {
	font-family: inherit;
	text-transform: none;
	margin: 0 0 10px 0;
	padding: 0;
}
#Content .boxes .box.product .content .note {
	color: var(--rd-cyan);
	font-weight: 800;
}
#Content .boxes .box.product .content a.Button {
	display: inline-block;
	float: none;
	width: auto;
	height: auto;
	margin: 10px 0 0 0;
	padding: 9px 20px;
	background: var(--rd-blue);
	border: none;
	border-radius: 26px !important;
	box-sizing: border-box;
	text-transform: none;
}
#Content .boxes .box.product .content a.Button:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}
#Content .boxes .box.product .content a.Button strong {
	font-weight: 800;
}
/* --- slider: Hero-Sektion --- */
#Content section.cms-hero {
	max-width: none;
	min-height: 420px;
	margin: 26px auto 50px auto;
	border-radius: 24px;
	background-color: var(--rd-blue);
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	position: relative;
	font-family: var(--rd-font);
}
#Content section.cms-hero::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to top, rgba(10, 30, 60, 0.72) 0%, rgba(10, 30, 60, 0.05) 55%);
}
#Content section.cms-hero .hero-content {
	position: relative;
	padding: 44px 52px;
	max-width: 680px;
	text-align: left;
}
#Content section.cms-hero .hero-title {
	font-family: inherit;
	text-transform: none;
	margin: 0 0 12px 0;
	padding: 0;
}
#Content section.cms-hero .hero-subtitle {
	font-family: inherit;
	margin: 0 0 22px 0;
}
#Content section.cms-hero .hero-button {
	display: inline-block;
	padding: 12px 30px;
	background: var(--rd-cyan);
	border-radius: 28px;
	text-decoration: none;
}
#Content section.cms-hero .hero-button:hover {
	background: #FFFFFF;
	color: var(--rd-blue);
}
@media (max-width: 900px) {
    #Content section.cms-hero {
    	min-height: 300px;
    	border-radius: 0;
    }
    #Content section.cms-hero .hero-content {
    	padding: 26px 28px;
    }
}
/* section-Basisregel (max-width 1400) fuer CMS-Sektionen aufheben */
#Content section.cms-claim, #Content section.cms-teaser {
	max-width: none;
}

/* --- claim: Sektions-Ueberschrift / Kicker / CTA --- */
#Content .cms-claim {
	margin: 3% auto 3% auto;
	text-align: left;
	font-family: var(--rd-font);
}
#Content .cms-cards + .cms-claim {
	margin: 2% auto 6% auto;
}

#Content .cms-claim.center {
	text-align: center;
}
#Content .cms-claim .claim-kicker {
	margin: 0 0 14px 0;
}
#Content .cms-claim .claim-title {
	font-family: inherit;
	text-transform: none;
	margin: 0;
	padding: 0 0 12px 0;
}
#Content .cms-claim .claim-title u {
	text-decoration: none;
	position: relative;
	white-space: nowrap;
	display: inline-block;
}
#Content .cms-claim .claim-title u::after {
	content: '';
	position: absolute;
	left: -5px;
	right: 0;
	bottom: -14px;
	height: 22px;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	opacity: 0.8;
}
#Content .cms-claim .claim-subtitle {
	font-family: inherit;
	margin: 14px 0 0 0;
}
#Content .cms-claim .claim-button {
	display: inline-block;
	margin-top: 20px;
	padding: 13px 36px;
	background: var(--rd-blue);
	border-radius: 26px;
	font-family: inherit;
	text-decoration: none;
	border: 1px solid #FFFFFF;
}
#Content .cms-claim .claim-button:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}

/* claim-Variante bubble: Einstein + Sprechblase, ueberlappt das folgende Panel-Band */
#Content .cms-claim.bubble {
	position: relative;
	z-index: 20;
	text-align: center;
	margin: -5vw calc(50% - 50vw) -14.699vw calc(50% - 50vw);
	min-height: 47vw;
	max-width: 1980px;
	background: url(../images/redesign2026/einstein-fingerzeig.png) calc(50% - 15vw) bottom / auto 100% no-repeat;
}
#Content .cms-claim.bubble .claim-title {
	display: inline-block;
	position: relative;
	padding: 3vw 0 4vw 11vw;
	color: var(--rd-cyan);
	font-size: 62px;
	line-height: 1.2;
	margin: 10vw 0 0 22vw;
	background: url('../images/redesign2026/sprechblase-offen.svg') center / contain no-repeat;
}

#Content .cms-claim.bubble .claim-title strong, #Content .cms-claim.bubble .claim-title b {
	color: var(--rd-blue);
	font-weight: inherit;
}
#Content .cms-claim.bubble .claim-title u::after {
	display: none;
}
/* Der bubble-Claim liegt per z-index 20 und negativem Aussenabstand bewusst UEBER dem
   folgenden Panel-Band - nur so reichen Einsteins Arme ueber dessen Oberkante. Damit der
   Zeigefinger aber nicht auf den Karten (und deren Icon) landet, stehen die Karten des
   direkt folgenden Bandes eine Stufe hoeher; das Band selbst bleibt unter dem Motiv. */
#Content .cms-claim.bubble + .infopanels2026 .infopanel {
	position: relative;
	z-index: 30;
}

/* claim-Variante hero: weisse Karte auf Bild (Partner-Seite) */
#Content .cms-claim.hero {
	margin: -24px calc(50% - 50vw) 0 calc(50% - 50vw);
	min-height: 540px;
	background-color: var(--rd-blue);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	padding: 60px 40px;
	text-align: left;
}
#Content .cms-claim.hero .claim-content {
	position: relative;
	background: #FFFFFF;
	border-radius: 24px;
	box-shadow: 0 10px 36px rgba(0, 0, 0, 0.18);
	max-width: 800px;
	padding: 3% 3%;
	margin-left: 2.5vw;
	box-sizing: border-box;
}
#Content.site-partner .cms-claim.hero, #Content.site-partner .cms-claim.hero .claim-content {
	text-align: center;
}
#Content.site-partner .cms-claim .claim-title u::after {
	left: 0;
	right: 0;
	bottom: -10px;
}

#Content.site-partner .infopanels2026 .infopanel .Button {
	min-width: 250px;
}

#Content .infopanels2026 .infopanel .panel-text p {
	text-align: left;
	color: var(--color-text);
}

#Content .cms-claim.hero .claim-title {
	padding: 0;
	margin: 0 0 40px 0;
	text-align: left;
}
#Content .cms-claim.hero .claim-button {
	margin-top: 0;
	padding: 15px 44px;
}

/* --- step: nutzt howto2026-Layout, Swoosh via <u> --- */
.howto2026 .step-left h2 u {
	text-decoration: none;
	position: relative;
	white-space: nowrap;
	display: inline-block;
}
.howto2026 .step-left h2 u::after {
	content: '';
	position: absolute;
	left: -10px;
	right: 0;
	bottom: -15px;
	height: 22px;
	width: 230px;
	background: transparent url('../images/redesign2026/icons/underline.svg') 0% 0% no-repeat;
	opacity: 0.8;
}
.howto2026 .step-card .step-button {
	background-color: #134890 !important;
	margin: 10% auto 0 auto;
	display: inline-block;
}
.howto2026 .step-card .step-text {
	font-family: var(--rd-font);
}
.howto2026 .step-card .step-text p {
	margin: 0 0 14px 0;
}

/* --- teaser: Bild + Text-Panel, alternierend --- */
#Content .cms-teaser {
	display: flex;
	gap: 60px;
	align-items: center;
	margin: 40px auto 60px auto;
	font-family: var(--rd-font);
	text-align: left;
}
#Content .cms-teaser .teaser-media {
	flex: 1 1 0;
	min-width: 0;
	order: 2;
	text-align: center;
}
#Content .cms-teaser.reverse .teaser-media {
	order: 0;
}
#Content .cms-teaser .teaser-media img {
	max-width: 100%;
	height: auto;
	border-radius: 24px;
}
#Content .cms-teaser .teaser-content {
	flex: 1.05 1 0;
	min-width: 0;
	background: #EAF6FC;
	border-radius: 24px;
	padding: 50px 54px;
	box-sizing: border-box;
}
#Content .cms-teaser .teaser-kicker {
	margin: 0 0 10px 0;
}
#Content .cms-teaser .teaser-title {
	font-family: inherit;
	text-transform: none;
	margin: 0 0 18px 0;
	padding: 0;
}
#Content .cms-teaser .teaser-text p {
	margin: 0 0 14px 0;
}
#Content .cms-teaser .teaser-button {
	display: inline-block;
	margin-top: 12px;
	padding: 13px 36px;
	background: var(--rd-blue);
	border-radius: 26px;
	text-decoration: none;
}
#Content .cms-teaser .teaser-button:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}

/* teaser-Variante blue: volles blaues Band (z. B. Standorte-Sektion) */
#Content .cms-teaser.blue {
	margin: 60px calc(50% - 50vw);
	padding: 70px max(40px, calc(50vw - 890px));
	background: transparent linear-gradient(226deg, #009BDD 0%, #2175B2 100%) 0% 0% no-repeat padding-box;
	gap: 80px;
}
#Content .cms-teaser.blue .teaser-content {
	background: none;
	padding: 0;
}
#Content .cms-teaser.blue .teaser-kicker {
	color: #FFFFFF;
}
#Content .cms-teaser.blue .teaser-title {
	color: #FFFFFF;
}
#Content .cms-teaser.blue .teaser-text, #Content .cms-teaser.blue .teaser-text p, #Content .cms-teaser.blue .teaser-text li {
	color: #FFFFFF;
}
#Content .cms-teaser.blue .teaser-button {
	background: var(--rd-blue);
	border: 1px solid #FFFFFF;
	display: inline-block;
	margin-top: 10%;
}
#Content .cms-teaser.blue .teaser-button:hover {
	background: #FFFFFF;
	color: var(--rd-blue);
}
#Content .cms-teaser.blue .teaser-media {
	flex: 1.6 1 0;
}
#Content .cms-teaser.blue .teaser-content {
	flex: 1 1 0;
}
#Content .cms-teaser.blue .teaser-media img {
	width: 100%;
	border-radius: 24px;
}

/* --- infopanel: Karten-Band --- */
#Content .infopanels2026 {
	display: flex;
	gap: 40px;
	align-items: stretch;
	justify-content: center;
	margin: 0 calc(50% - 50vw) 60px calc(50% - 50vw);
	padding: 100px max(40px, calc(50vw - 890px)) 70px max(40px, calc(50vw - 890px));
	background: linear-gradient(120deg, var(--rd-blue) 0%, var(--rd-cyan) 100%);
	font-family: var(--rd-font);
}
#Content .infopanels2026 .infopanel {
	flex: 1 1 0;
	background: transparent linear-gradient(226deg, #FFFFFF 0%, #D0EEF4 100%) 0% 0% no-repeat padding-box;
	border-radius: 24px;
	padding: 5% 4%;
	box-sizing: border-box;
	text-align: left;
	max-width: 720px;
}
#Content .infopanels2026 .infopanel .panel-icon {
	display: block;
	width: 64px;
	height: 64px;
	margin: 0 auto 18px auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
#Content .infopanels2026 .infopanel .panel-title {
	font-family: inherit;
	text-align: center;
	text-transform: none;
	margin: 0 0 6% 0;
}
#Content .infopanels2026 .infopanel .panel-text p {
	margin: 0 0 12px 0;
	font-weight: 600;
	text-align: center;
	color: var(--color-dark);
}
.home #Content .infopanels2026 .infopanel .panel-text p {
	text-align: left;
}
#Content .infopanels2026 .infopanel .panel-text .cols {
	display: flex;
	gap: 30px;
}
#Content .infopanels2026 .infopanel .panel-text .cols > div {
	flex: 1 1 0;
	min-width: 0;
}
#Content .infopanels2026:not(.blue):not(.plain) .infopanel {
	max-width: none;
}
#Content .infopanels2026:not(.blue):not(.plain):not(.steps) .infopanel:first-child {
	flex: 1 1 0;
}
#Content .infopanels2026:not(.blue):not(.plain):not(.steps) .infopanel:first-child ~ .infopanel {
	flex: 1.85 1 0;
}

/* Claim direkt vor hellem Band wird Teil der Flaeche (z. B. "Unsere Mietkonzepte") */
#Content .cms-claim:has(+ .infopanels2026.blue) {
	margin: 70px calc(50% - 50vw) 0 calc(50% - 50vw);
	padding: 70px var(--rd-pad) 10px var(--rd-pad);
	background: #E9F5FC;
}
#Content .cms-claim:has(+ .infopanels2026.blue) + .infopanels2026.blue {
	padding-top: 50px;
	padding-bottom: 30px;
	margin-bottom: 0;
}
#Content .infopanels2026.blue + .cms-claim {
	margin: 0 calc(50% - 50vw);
	padding: 0 var(--rd-pad) 70px var(--rd-pad);
	background: #E9F5FC;
}

/* infopanel-Variante blue: blaue Karten auf hellem Band (Mietkonzepte) */
#Content .infopanels2026.blue {
	background: #E9F5FC;
	align-items: flex-start;
	padding-top: 80px;
	padding-bottom: 80px;
}
#Content .infopanels2026.blue .infopanel {
	position: relative;
	background: linear-gradient(135deg, var(--rd-cyan) 0%, var(--rd-blue) 100%);
	margin-top: 40px;
	max-width: 600px;
}
#Content .infopanels2026.blue .infopanel:nth-child(even) {
	margin-top: 110px;
}
#Content .infopanels2026.blue .infopanel .panel-icon {
	position: absolute;
	top: -55px;
	left: 50%;
	transform: translateX(-50%);
	width: 96px;
	height: 96px;
	margin: 0;
	background-size: contain;
}
#Content .infopanels2026.blue .infopanel .panel-title {
	color: #FFFFFF;
	text-align: left;
}
#Content .infopanels2026.blue .infopanel .panel-text, #Content .infopanels2026.blue .infopanel .panel-text p, #Content .infopanels2026.blue .infopanel .panel-text li {
	color: #FFFFFF;
}

/* infopanel-Variante plain: Rahmen-Karten ohne Band (Partner-Argumente) */
#Content .infopanels2026.plain {
	background: none;
	margin-left: auto;
	margin-right: auto;
	padding: 90px 0 20px 0;
}
#Content .infopanels2026.plain .infopanel {
	background: none;
	border: 2px solid var(--rd-blue);
	border-radius: 24px;
	padding: 0 3% 3% 3%;
	max-width: none;
}
#Content .infopanels2026.plain .infopanel .panel-icon {
	width: 130px;
	height: 130px;
	margin: -65px auto 6px auto;
}

/* --- box: Bild oben + randlose Variante --- */
#Content .boxes .box .box-image {
	display: block;
	width: calc(100% + 52px);
	margin: -30px -26px 20px -26px;
	height: 210px;
	object-fit: cover;
	border-radius: 24px;
	max-width: none;
}
/* Versatz wie im XD: jede zweite Bild-Karte invertiert (Text oben, Foto unten) */
#Content .boxes .box:has(.box-image) {
	display: flex;
	flex-direction: column;
}
#Content .boxes .box:nth-child(even) .box-image {
	order: 10;
	margin: auto -26px -30px -26px;
	border-radius: 24px;
	padding-top: 20px;
	box-sizing: content-box;
}
#Content .boxes .box.plain {
	border: 0;
	box-shadow: none;
	background: none;
}
#Content .boxes .box.plain .box_icon {
	width: auto;
	height: 200px;
}
#Content .boxes .box.plain .box_icon img {
	width: auto;
	height: 200px;
	max-width: 100%;
	object-fit: contain;
	border-radius: 0;
}

@media (max-width: 900px) {
    #Content .cms-teaser, #Content .infopanels2026 {
    	flex-wrap: wrap;
    }
    /*#Content .cms-claim.bubble {
    	background: none;
    	margin-bottom: 0;
    	min-height: 0;
    }*/
    #Content .cms-claim.bubble .claim-title {
    	margin-left: 0;
    }
}
/* Startseite: Seitenraender wie im XD (Inhalt max. 1540px zentriert, Baender innen buendig) */
section#Content.site-home {
	padding-left: var(--rd-pad);
	padding-right: var(--rd-pad);
}
#Content.site-home .infopanels2026 {
	padding-left: var(--rd-pad);
	padding-right: var(--rd-pad);
}
#Content.site-home .cms-teaser.blue {
	padding-left: var(--rd-pad);
	padding-right: var(--rd-pad);
	padding-top: 5%;
	padding-bottom: 8%;
}
/* Startseite: Sektionsfeinheiten nach XD (2026-07-08) */
/* Letzte Sektion (blaues Band) schliesst buendig an den Footer an */
section#Content.site-home:has(.cms-teaser.blue:last-child) {
	padding-top: 0;
	padding-bottom: 0;
}
#Content.site-home .cms-teaser.blue:last-child {
	margin-bottom: 0;
}

/* Karten fuellen die Inhalts-Flucht, ohne Karten-Chrome (randlos wie im XD) */
#Content.site-home .boxes {
	gap: 44px;
}
#Content.site-home .boxes .box {
	max-width: none;
	flex: 1 1 0;
	background: none;
	border: 0;
	box-shadow: none;
	padding: 0;
	text-align: left;
}
#Content.site-home .boxes .box .box_icon {
	width: 120px;
	height: 120px;
	margin: 0 0 16px 0;
	justify-content: flex-start;
}
#Content.site-home .boxes .box .box_icon img {
	width: 120px;
	height: 120px;
}
#Content.site-home .boxes .box .Title {
	text-align: left;
	margin-left: 0;
}
#Content.site-home .boxes .box .Subtitle {
	text-align: left;
	color: var(--rd-text);
}
#Content.site-home .boxes .box .box-image {
	width: 100%;
	margin: 0 0 26px 0;
	height: auto;
	border-radius: 24px;
	aspect-ratio: 480 / 360;
}
#Content.site-home .boxes .box:nth-child(even) .box-image {
	margin: 20px 0 0 0;
	border-radius: 24px;
	padding-top: 0;
	box-sizing: content-box;
}
#Content.site-home .boxes .box.plain .box_icon {
	height: 220px;
}
#Content.site-home .boxes .box.plain .box_icon img {
	height: 220px;
}

/* Teaser hell (Partner werden / Anhaengermodul): Bild ueberlappt das Panel wie im XD */
#Content .cms-teaser:not(.blue) {
	gap: 0;
	align-items: flex-start;
	margin-top: 60px;
	margin-bottom: 130px;
}
#Content .cms-teaser:not(.blue) .teaser-content {
	flex: 1.05 1 0;
	padding: 60px 340px 60px 60px;
	margin-right: -280px;
}
#Content .cms-teaser:not(.blue).reverse .teaser-content {
	margin-right: 0;
	margin-left: -280px;
	padding: 60px 60px 60px 340px;
}
#Content .cms-teaser:not(.blue) .teaser-media {
	position: relative;
	z-index: 2;
	transform: translateY(-45px);
	align-self: flex-start;
}
/* claim-Variante band: zentriert auf hellblauem Vollbreiten-Band */
#Content .cms-claim.band {
	text-align: center;
	margin: 0 calc(50% - 50vw);
	padding: 3% var(--rd-pad);
	background: #E9F5FC;
}
#Content .cms-claim.band .claim-kicker {
	margin: 0;
}
#Content .cms-claim.band .claim-subtitle {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	font-size: 14px;
}
/* infopanel-Variante steps: 5 Schritte mit gestrichelten Verbindungen */
#Content .infopanels2026.steps {
	background: #E9F5FC;
	gap: 0;
	padding: 30px var(--rd-pad) 0 var(--rd-pad);
	margin-bottom: 0;
	align-items: flex-start;
}
#Content .infopanels2026.steps .infopanel {
	background: none;
	border-radius: 0;
	padding: 0 20px;
	max-width: none;
	position: relative;
	flex: 0 0 20%;
	width: 20%;
	min-width: 0;
	box-sizing: border-box;
}
#Content .infopanels2026.steps .infopanel .panel-icon {
	width: 110px;
	height: 110px;
	margin: 0 auto 24px auto;
	background-size: contain;
}
#Content .infopanels2026.steps .infopanel:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 53px;
	left: calc(50% + 70px);
	width: calc(100% - 140px);
	border-top: 3px dashed var(--rd-cyan);
}
#Content .infopanels2026.steps .infopanel .panel-title {
	text-align: center;
	margin: 0 0 8px 0;
}
#Content .infopanels2026.steps .infopanel .panel-text {
	text-align: center;
}
/* teaser-Variante card: 3er-Karten-Grid (Look wie Flotte-Ratgeber) */
#Content .cms-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	align-items: start;
	padding: 20px calc(var(--rd-pad) - 35px) 30px calc(var(--rd-pad) - 35px);
	font-family: var(--rd-font);
}
#Content .cms-cards .cms-card {
	display: flex;
	flex-direction: column;
	text-align: left;
}
#Content .cms-cards .cms-card:nth-child(2) {
	margin-top: 96px;
}
#Content .cms-cards .cms-card .media {
	display: block;
	margin-bottom: 28px;
}
#Content .cms-cards .cms-card .media img {
	width: 100%;
	display: block;
	border-radius: 24px;
	aspect-ratio: 490 / 358;
	object-fit: cover;
}
#Content .cms-cards .cms-card h3 {
	font-family: inherit;
	margin: 0 0 16px 0;
	text-transform: none;
}
#Content .cms-cards .cms-card h3 a {
	color: inherit;
	text-decoration: none;
}
#Content .cms-cards .cms-card h3 a:hover {
	color: var(--rd-cyan);
}
#Content .cms-cards .cms-card .teaser {
	margin-bottom: 18px;
}
#Content .cms-cards .cms-card .teaser p {
	margin: 0;
}


/* --- fleetslider: Anhaengerflotte-Slider (Inhalte automatisch aus tiles/actions/fleet.data.php) --- */
#Content .fleetslider2026 {
	max-width: none;
	position: relative;
	margin: 10px calc(50% - 50vw) 30px calc(50% - 50vw);
}
#Content .fleetslider2026 .glide__track {
	margin: 0 calc(var(--rd-pad) + 80px);
}
#Content .fleetslider2026 .glide__slides {
	align-items: stretch;
}
#Content .fleetslider2026 .glide__slide {
	box-sizing: border-box;
	padding: 0 20px;
	height: auto;
}
#Content .fleetslider2026 .fleet-slide {
	display: block;
	text-align: center;
	text-decoration: none;
}
#Content .fleetslider2026 .fleet-slide .illu {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	height: 240px;
}
#Content .fleetslider2026 .fleet-slide .illu img {
	max-height: 240px;
	max-width: 100%;
	width: auto;
}
#Content .fleetslider2026 .slide-title {
	display: none;
} /* Titel wie im XD ausgeblendet (Markup bleibt fuer kuenftige Nutzung) */
#Content .fleetslider2026 .slide-text {
	display: none;
} /* Beschreibung wie im XD ausgeblendet (Markup bleibt fuer kuenftige Nutzung) */
#Content .fleetslider2026 .glide__arrow {
	position: absolute;
	top: 120px;
	width: 54px;
	height: 54px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background-color: var(--rd-cyan);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFFFFF' d='M12.9,12l-4.6-4.6,1.4-1.4,6,6-6,6-1.4-1.4,4.6-4.6Z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 55% center;
	background-size: 28px;
	box-shadow: none;
	text-shadow: none;
	cursor: pointer;
}
#Content .fleetslider2026 .glide__arrow--left {
	left: var(--rd-pad);
	right: auto;
	transform: rotate(180deg);
}
#Content .fleetslider2026 .glide__arrow--right {
	right: var(--rd-pad);
	left: auto;
	transform: none;
}
#Content .fleetslider2026 .glide__arrow:hover {
	background-color: var(--rd-blue);
}

/*#endregion Redesign 2026 - CMS-Textbausteine */


/*#region Redesign 2026 - Buchungsstrecke */
/* Modal: EINE weisse Karte wie die Detail-Modals (Vorgabe 07-23) - Mietstation-Info als Kopfbereich ueber dem Formular */
/* Formular-Zeilenraster wie Kontakt/Registrierung (Anfrage-Modal: Fieldsets gestapelt);
   Felder im Raster nicht auf 650px kappen - Breite steuert das Flex-Raster (wie contact2026) */
.booking2026 .row input.Field, .booking2026 .row select, .booking2026 .row textarea.Fieldtextarea {
	max-width: none;
}

.booking2026 .row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin-bottom: 20px;
}

.booking2026 .row > *,
.bk-dropoffbox > * {
	flex: 1 1 0;
	min-width: 0;
}

.booking2026 > .Infos {
	padding: 0 0 24px 0;
	margin: 0 0 26px 0;
	border-bottom: 1px solid #D9DEE4;
	width: auto;
	float: none;
}
.booking2026 > .Titel {
	margin-bottom: 2%;
}
.fancybox-content .booking2026 > .Titel,
.fancybox-content .booking2026 > .Textnormal,
.fancybox-content .booking2026 > .Space40 {
	display: none;
}

.fancybox-video {
	margin: 0 auto;
	aspect-ratio: 1080 / 1350;
	width: auto;
	max-height: 100%;
}

.fancybox-slide--video .fancybox-content {
	width: auto !important;
	max-width: 100%;
}

/* Intro-Fliesstext: im XD nicht vorhanden */
.booking2026 > form {
	padding: 0;
}
.booking2026 .Infos .Offeror {
	float: none;
	width: auto;
	padding: 0;
	margin: 0;
}
.booking2026 .Infos .Untertitel {
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	color: var(--rd-gray);
	text-transform: uppercase;
	letter-spacing: 0.4px;
	margin: 0 0 6px 0;
}
/* Panels statt Fieldsets (XD-Zeilenkarten) */
.booking2026 fieldset {
	border: 1px solid #D9DEE4;
	border-radius: 16px;
	padding: 18px 24px 20px 24px;
	margin: 0 0 16px 0;
}
.booking2026 fieldset legend,
.booking2026 legend.Untertitel,
.booking2026 h2.Untertitel {
	font-family: inherit;
	text-transform: none;
	padding: 0 8px;
	margin: 0;
}
.booking2026 h2.Untertitel {
	display: block;
	padding: 0;
	margin: 4px 0 12px 0;
}
/* Anhaenger-Auswahl als Karten */
.booking2026 .TrailersSelect {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0 0 18px 0;
}
.booking2026 .TrailersSelect .Trailer {
	position: relative;
	margin: 0;
	padding: 0;
	width: auto;
	float: none;
}
.booking2026 .TrailersSelect .Trailer input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.booking2026 .TrailersSelect .Trailer label {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	width: 125px;
	min-height: 132px;
	border: 1px solid #C7CFD8;
	border-radius: 12px;
	padding: 12px 8px;
	box-sizing: border-box;
	background: #FFFFFF;
	cursor: pointer;
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	color: var(--rd-text);
	text-align: center;
	line-height: 1.3;
	hyphens: auto;
	text-overflow: ellipsis;
	overflow: hidden;
	align-content: center;
	flex-wrap: wrap;
	justify-content: space-between;
}
.booking2026 .TrailersSelect .Trailer input:checked + label {
	border: 2px solid var(--rd-cyan);
	padding: 11px 7px;
	color: var(--rd-blue);
}
.booking2026 .TrailersSelect .Trailer label .Icon {
	display: block;
	width: 85%;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	margin: 0;
	float: none;
}
.booking2026 .TrailersSelect .Trailer a.info {
	position: absolute;
	top: 6px;
	right: 6px;
}
/* Zeit-Slots als Pills (XD Abholzeit) */
.booking2026 .DatesSelect {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 10px;
	margin: 12px 0 6px 0;
}
.booking2026 .DatesSelect .ReservationDate {
	margin: 0;
	padding: 0;
	width: auto;
	float: none;
}
.booking2026 .DatesSelect .ReservationDate input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.booking2026 .DatesSelect .ReservationDate label {
	display: block;
	border: 1px solid #C7CFD8;
	border-radius: 12px;
	padding: 10px 12px;
	background: #FFFFFF;
	cursor: pointer;
	font-family: inherit;
	font-size: 13px;
	font-weight: 500;
	color: var(--rd-text);
	line-height: 1.44;
	width: auto;
	height: auto;
}
.booking2026 .DatesSelect .ReservationDate input:checked + label {
	border: 2px solid var(--rd-cyan);
	padding: 9px 11px;
	color: var(--rd-blue);
}
.booking2026 .DatesSelect .ReservationDate input:disabled + label {
	opacity: 0.4;
	cursor: default;
	text-decoration: line-through;
}
/* Buttons */
.booking2026 .Button {
	display: inline-block;
	background: var(--rd-blue);
	border: 0;
	border-radius: 26px !important;
	padding: 13px 34px;
	font-family: inherit;
	text-transform: none;
	letter-spacing: 0;
	cursor: pointer;
	height: auto;
}
.booking2026 .Button:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}
.booking2026 .Button.Grey {
	background-color: #FFFFFF !important;
	color: var(--rd-text) !important;
	border: 1px solid var(--rd-text);
}
.booking2026 .Button.Grey:hover {
	border-color: var(--rd-blue);
	color: var(--rd-blue) !important;
	background: #FFFFFF !important;
}
.booking2026 .Button[disabled], .booking2026 .Button:disabled {
	opacity: 0.45;
	cursor: default;
}
/* Datenbloecke (Buchungsdaten, XD Screen 07/14) */
.booking2026 dl {
	display: grid;
	grid-template-columns: 180px 1fr;
	gap: 4px 16px;
	margin: 0;
	font-family: inherit;
}
.booking2026 dl dt {
	font-weight: 600;
	color: var(--rd-font);
	margin: 0;
	padding: 0;
	width: auto;
	float: none;
}
.booking2026 dl dd {
	font-weight: 500;
	color: var(--rd-text);
	margin: 0;
	padding: 0;
	width: auto;
	float: none;
}
.booking2026 dl dd a {
	color: var(--rd-blue);
}
.booking2026 .Error.Textnormal {
	color: #C22C2C;
	font-family: inherit;
	font-size: 15px;
}
/* Alt-Overlays neutralisieren (Streifen/Haken-Pseudos, disabled-Faerbung, Input-Buttons) */
.booking2026 .DatesSelect .ReservationDate label::before, .booking2026 .DatesSelect .ReservationDate label::after, .booking2026 .TrailersSelect .Trailer label::before, .booking2026 .TrailersSelect .Trailer label::after {
	display: none;
	content: none;
}
.booking2026 .DatesSelect .ReservationDate input[type="radio"]:checked + label {
	border: 2px solid var(--rd-cyan);
	padding: 9px 11px;
	color: var(--rd-blue);
	background: #FFFFFF;
}
.booking2026 .DatesSelect .ReservationDate input[type="radio"]:disabled + label {
	background: #F2F5F8;
	border: 1px solid #E1E7ED;
	padding: 10px 12px;
	color: #9AA6B1;
	opacity: 1;
	text-decoration: line-through;
	cursor: default;
}
.booking2026 .DatesSelect .ReservationDate input[type="radio"]:disabled:hover + label {
	background: #F2F5F8;
}
.booking2026 .TrailersSelect .Trailer input[type="radio"]:checked + label {
	border: 2px solid var(--rd-cyan);
	padding: 11px 7px;
	color: var(--rd-blue);
	background: #FFFFFF;
}
.booking2026 input.Button {
	min-width: 0;
}
.booking2026 .DatesSelect .ReservationDate label i {
	font-style: normal;
	color: var(--rd-gray);
	font-size: 12px;
}
.booking2026 .DatesSelect .ReservationDate label b {
	font-weight: 700;
}
/* Etappe 2: Login (Screen 06), Buchungsdaten (07/14), AGB/Zahlung (14/18) */
.booking2026 .booking-login-title {
	font-family: inherit;
	text-align: center;
	text-transform: none;
	margin: 6px 0 26px 0;
}
/* Anmelde-Schritt: Anmeldung und Registrierung als kb-Formboxen untereinander,
   Aufbau wie die Karten der Zeitauswahl (cap-Ueberschrift, Inhalt linksbuendig) */
.booking2026 .bk-loginbox .Textnormal {
	font-family: inherit;
	margin-top: 10px;
}
.booking2026 .bk-loginbox .floating-label {
	max-width: none;
	margin-bottom: 10px;
}
.booking2026 .bk-loginbox input.Field {
	background: #F0F0F2;
	border: 0;
	border-radius: 10px;
	max-width: 300px;
	width: 100%;
	box-sizing: border-box;
}
.booking2026 .bk-loginbox .bk-loginactions {
	margin-top: 4px;
}
.booking2026 .bk-loginbox a.lostpassword {
	display: inline-block;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	color: var(--rd-text);
	text-decoration: underline;
}
.booking2026 .bk-loginbox a.lostpassword:hover {
	color: var(--rd-blue);
}
.booking2026 .bk-loginbox a.Button {
	color: #FFFFFF;
}
/* Fuehrerschein-Panel (XD 07/14: kraeftiger Rahmen, Erfolg cyan) */
.booking2026 #DriverlicenceCheck fieldset {
	border: 2px solid var(--rd-text);
}
.booking2026 #DriverlicenceCheck .licence-valid {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: inherit;
	font-size: 16px;
	font-weight: 700;
	color: var(--rd-cyan);
	margin: 12px auto;
}
.booking2026 #DriverlicenceCheck .licence-valid::before {
	content: '';
	width: 22px;
	height: 22px;
	flex: 0 0 auto;
	background: transparent url(../images/redesign2026/icons/valid.svg) no-repeat center;
	background-size: contain;
}
.booking2026 #DriverlicenceCheck .Error {
	margin-top: 10px;
}
.booking2026 #DriverlicenceCheck .Error.Textnormal {
	color: var(--color-font);
}
.booking2026 #DriverlicenceCheck .Button {
	margin: 20px auto;
}
/* AGB / Datenschutz (XD 14) */
.booking2026 .bg-grey {
	background: none;
	padding: 0;
}
.booking2026 .CheckboxList {
	margin: 0 0 10px 0;
}
.booking2026 .CheckboxList label {
	font-family: inherit;
	font-size: 15px;
	font-weight: 500;
	color: var(--rd-text);
	line-height: 1.55;
	text-transform: none;
}
.booking2026 .CouponContainer {
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: inherit;
	font-size: 15px;
	font-weight: 500;
}
.booking2026 .CouponContainer input.Field {
	background: #F0F0F2;
	border: 0;
	border-radius: 10px;
	margin: 0;
}
/* Nur-Anfrage-Flow (XD Screens 26/27) - nutzt den booking2026-Rahmen */
.booking2026 textarea.Fieldtextarea {
	background: #F0F0F2;
	border: 0;
	border-radius: 10px;
	font-family: inherit;
	font-size: 15px;
	font-weight: 500;
	color: var(--rd-text);
	max-width: none;
	width: 100%;
	box-sizing: border-box;
}
.booking2026 .Textklein {
	font-family: inherit;
	font-size: 13px;
	color: var(--rd-gray);
}
.booking2026 > form > .Untertitel, .booking2026 .thanks-title {
	font-family: inherit;
}
.booking2026 .Column50Left, .booking2026 .Column50Right {
	box-sizing: border-box;
}
/* Bestaetigungsseite nach Zahlung (payed~successfully - kein eigener XD-Screen, Formensprache der Buchungs-Modals) */
.payed2026 .payed-card {
	border: 1px solid #D9DEE4;
	border-radius: 24px;
	background: #FFFFFF;
	padding: 6%;
	text-align: center;
	box-sizing: border-box;
}
.payed2026 .payed-check {
	width: 56px;
	height: 56px;
	margin: 0 auto 24px auto;
	border-radius: 50%;
	background: var(--rd-cyan) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 30px no-repeat;
}
.payed2026 .payed-card .Error.Textnormal {
	color: #C22C2C;
	font-size: 15px;
}
.payed2026 .payed-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
	margin-top: 30px;
}
/* Login-Seite (login.html): Karten wie Buchungs-Login (XD Screen 06/25) */
section#Content.site-login {
	max-width: none;
	padding: 0 !important;
	text-align: center;
}
section#Content.site-login article.shorttext {
	text-align: center;
	margin: 0 auto 5% auto;
}
section#Content.site-login article.shorttext .Textnormal {
	max-width: 640px;
	margin: 0 auto;
	text-align: center;
}
section#Content.site-login .content.login {
	max-width: 950px;
	margin: 0 auto;
	box-sizing: border-box;
	float: none;
	width: auto;
}
section#Content.site-login .content.login .Columns {
	display: flex;
	gap: 5%;
	align-items: stretch;
}
section#Content.site-login .Columns:after,
registration2026 .registration2026-content .Columns:after {
	display: none;
}
section#Content.site-login .content.login .Column50Left,
section#Content.site-login .content.login .Column50Right {
	flex: 1 1 0;
	width: auto;
	float: none;
	padding: 0;
	margin: 0;
}
section#Content.site-login .content.login .loginform {
	height: 100%;
	box-sizing: border-box;
	border: 1px solid #D9DEE4;
	border-radius: 16px;
	padding: 30px 32px;
	text-align: center;
	background: #FFFFFF;
}
section#Content.site-login .content.login .loginform h2.Title {
	font-family: inherit;
	text-transform: none;
	letter-spacing: 0;
	text-align: center;
	margin: 0 0 14px 0;
	padding: 0;
	position: static;
	max-width: none;
}
section#Content.site-login .content.login .loginform h2.Title::after {
	display: none;
	content: none;
}
section#Content.site-login .content.login .loginform .Textnormal {
	font-family: inherit;
	text-align: center;
	max-width: none;
}
section#Content.site-login .content.login .loginform .floating-label {
	max-width: 340px;
	margin-left: auto;
	margin-right: auto;
}
section#Content.site-login .content.login .loginform input.Field {
	background: #F4F4F4;
	border: 0;
	border-radius: 10px;
	max-width: none;
	width: 100%;
	box-sizing: border-box;
}
section#Content.site-login .content.login .loginform .Button {
	display: inline-block;
	background: var(--rd-blue);
	border: 0;
	border-radius: 26px !important;
	padding: 13px 34px;
	font-family: inherit;
	text-transform: none;
	letter-spacing: 0;
	cursor: pointer;
	height: auto;
}
section#Content.site-login .content.login .loginform .Button:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}
section#Content.site-login .content.login .loginform input.Button {
	text-indent: 0;
	width: auto;
	height: auto;
	min-width: 0;
	margin: 0;
	background-image: none;
}
section#Content.site-login .content.login .loginform a.lostpassword {
	display: inline-block;
	margin-top: 14px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	color: var(--rd-text);
	text-decoration: underline;
}
section#Content.site-login .content.login .loginform a.lostpassword:hover {
	color: var(--rd-blue);
}
/* Select-Schritt zweispaltig nach XD Screen 05 (Muster Anfrage-Modal/detail2026):
   links Mietstation + Anhaengerwahl (35%), rechts Mietzeitraum/Abholzeit/Aktion */
.booking2026 .booking-select2026 {
	display: flex;
	gap: 40px;
	align-items: flex-start;
}
.booking2026 .booking-select2026 .bs-left {
	flex: 0 0 35%;
	min-width: 0;
}
.booking2026 .booking-select2026 .bs-right {
	flex: 1 1 auto;
	min-width: 0;
}
.booking2026 .booking-select2026 .Infos {
	float: none;
	width: auto;
	padding: 0;
	margin: 0 0 8% 0;
}
.booking2026 .booking-select2026 .TrailersSelect .Trailer {
	width: 100%;
}
.booking2026 .booking-select2026 .TrailersSelect .Trailer label {
	width: 100%;
	box-sizing: border-box;
}
/* XD Screen 05: linke Infokarte - gewaehlter Anhaenger als Karte wie in der
   Ergebnisliste, darunter Preiszeile; rechts kb-Formboxen mit Abholtermin-Navigation,
   Mietdauer, Abholzeit-Chips und errechneter Rueckgabezeit */
.booking2026 .bk-trailer {
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 16px 18px;
	margin: 0 0 16px 0;
}
.booking2026 .bk-trailer .bk-trailer-top {
	display: flex;
	align-items: flex-start;
}
.booking2026 .bk-trailer .trailer-ico {
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: url('../images/redesign2026/icons/trailer.svg') center / 100% no-repeat;
	box-sizing: border-box;
}
.booking2026 .bk-trailer h3 {
	flex: 1 1 auto;
	margin: 0 12px;
	min-width: 0;
	font-family: var(--rd-font);
	font-weight: 900;
	line-height: 1.35;
	font-size: 16px;
	color: var(--color-font);
	padding: 0;
	text-transform: none;
}
.booking2026 .bk-trailer h3 .plate {
	display: block;
	font-size: 15px;
	font-weight: 800;
	color: var(--color-font);
}
.booking2026 .bk-trailer .badges {
	flex: 0 0 auto;
}
.booking2026 .bk-trailer .badge {
	border: 1.5px solid var(--rd-cyan);
	color: var(--rd-blue);
	border-radius: 14px;
	padding: 3px 12px;
	font-family: var(--rd-font);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
}
.booking2026 .bk-trailer .badge.standard {
	border-color: #ABABAB;
	color: var(--rd-gray);
}
.booking2026 .bk-trailer .specs {
	font-size: 14px;
	font-weight: 500;
	color: var(--font-color);
	margin: 4px 0 4px 54px;
}
.booking2026 .bk-trailer a.details {
	display: inline-block;
	margin-left: 54px;
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-blue);
	text-decoration: underline;
}
.booking2026 .bk-trailer a.details:hover {
	color: var(--rd-cyan);
}
.booking2026 .bk-pricebox {
	display: flex;
	align-items: flex-start;
}
.booking2026 .bk-pricebox .price-ico {
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: url(../images/redesign2026/icons/price.svg) center / 100% no-repeat;
	box-sizing: border-box;
}
.booking2026 .bk-pricebox .bk-price-body {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0 12px;
}
/* Gutschein-Zeile ueber dem Endpreis: "40,00 EUR abzgl. Gutschein 10,00 EUR" */
.booking2026 .bk-pricebox .bk-price-coupon:empty {
	display: none;
}
.booking2026 .bk-pricebox .bk-price-coupon,
.booking2026 .bk-pricebox .bk-price-text {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	color: var(--color-font);
	margin-top: 6px;
}
.booking2026 .ico.euro, .freetime2026 .ico.euro {
	width: 20px;
	height: 20px;
	flex: 0 0 auto;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15 9a4 4 0 1 0 0 6M8 11h5M8 13h5'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* Rechte Spalte: Icons in den Box-Captions */
.booking2026 .cap .ico, .freetime2026 .cap .ico {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 8px;
	vertical-align: 0px;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.booking2026 .cap .ico.cal, .freetime2026 .cap .ico.cal {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.booking2026 .cap .ico.clock, .freetime2026 .cap .ico.clock {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 3'/%3E%3C/svg%3E");
}
.booking2026 .cap .ico.out, .freetime2026 .cap .ico.out {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Crect x='2' y='7' width='13' height='8' rx='1'/%3E%3Ccircle cx='8' cy='18' r='2'/%3E%3Cpath d='M17 11h5m0 0-2.5-2.5M22 11l-2.5 2.5'/%3E%3C/svg%3E");
}
.booking2026 .cap .ico.in, .freetime2026 .cap .ico.in {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Crect x='9' y='7' width='13' height='8' rx='1'/%3E%3Ccircle cx='15' cy='18' r='2'/%3E%3Cpath d='M7 11H2m0 0 2.5-2.5M2 11l2.5 2.5'/%3E%3C/svg%3E");
}
/* Box-Zeile: Caption links, Steuerung zentriert */
.booking2026 .bk-boxrow, .freetime2026 .bk-boxrow {
	display: flex;
	align-items: center;
	gap: 18px;
}
.booking2026 .bk-boxrow .cap, .freetime2026 .bk-boxrow .cap {
	flex: 0 0 auto;
}
.booking2026 .bk-datenav, .freetime2026 .bk-datenav {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	min-width: 0;
}
.booking2026 .bk-datenav .nav,
.freetime2026 .bk-datenav .nav {
	font-size: 22px;
	font-weight: 800;
	line-height: 1;
	color: var(--rd-blue);
	cursor: pointer;
	user-select: none;
	padding: 0 4px;
	width: 20px;
	overflow: hidden;
	text-indent: -100px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.booking2026 .bk-datenav .nav.next,
.freetime2026 .bk-datenav .nav.next {
	background-image: url(../images/redesign2026/icons/chevron-right.svg);
}
.booking2026 .bk-datenav .nav.prev,
.freetime2026 .bk-datenav .nav.prev {
	background-image: url(../images/redesign2026/icons/chevron-left.svg);
}
.booking2026 .bk-datenav .nav.disabled, .freetime2026 .bk-datenav .nav.disabled {
	color: #C1C1C1;
	cursor: default;
}
.booking2026 .bk-datenav .d, .freetime2026 .bk-datenav .d {
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 600;
	color: var(--rd-gray);
	white-space: nowrap;
	cursor: pointer;
}
.booking2026 .bk-datenav .d:hover, .freetime2026 .bk-datenav .d:hover {
	color: var(--rd-blue);
}
.booking2026 .bk-datenav .d.disabled, .freetime2026 .bk-datenav .d.disabled {
	color: #C1C1C1;
	cursor: default;
}
.booking2026 .bk-datenav .d.disabled:hover, .freetime2026 .bk-datenav .d.disabled:hover {
	color: #C1C1C1;
}
.booking2026 .bk-datenav .d.current, .freetime2026 .bk-datenav .d.current {
	position: relative;
	font-weight: 800;
	color: #000000;
	padding: 0 14px;
	border-left: 1px solid #DFDFDF;
	border-right: 1px solid #DFDFDF;
}
.booking2026 .bk-datenav .d.current:hover, .freetime2026 .bk-datenav .d.current:hover {
	color: var(--rd-blue);
}
.booking2026 .bk-datenav .d.current input[type="date"], .freetime2026 .bk-datenav .d.current input[type="date"] {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
	border: 0;
	padding: 0;
	margin: 0;
}
.booking2026 .bk-durationbox .dur, .freetime2026 .bk-durationbox .dur {
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
}
.booking2026 .bk-durationbox .dur select.Select, .freetime2026 .bk-durationbox .dur select.Select {
    width: auto !important;
    min-width: 150px;
	height: 40px;
	border: 1px solid #ABABAB;
	border-radius: 8px;
	text-align: center;
	text-align-last: center;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 600;
}
.booking2026 .kb-slotbox .kb-slots, .freetime2026 .kb-slotbox .kb-slots {
	justify-content: flex-start;
}
.booking2026 .bk-actions {
	text-align: center;
	margin-top: 24px;
}
.booking2026 .bk-actions .Button {
	margin-left: 10px;
	margin-right: 10px;
}
/* Daten-pruefen-Schritt: rechte Spalte als kb-Formboxen im Stil der Datumswahl */
.booking2026 .bk-databox dl,
.booking2026 .bk-databox .CouponContainer {
	margin-top: 12px;
}
/*#endregion Redesign 2026 - Buchungsstrecke */

/*#region Redesign 2026 - Kundenbereich (XD Kundenbereich Mieter/Vermieter) */
/* Rahmen: dashboard.frame.php - Sidebar links, Content auf Blau-Verlauf, Karten weiss */
.kb2026 {
	display: flex;
	align-items: stretch;
	margin: -24px calc(50% - 50vw) 0 calc(50% - 50vw);
	min-height: calc(100vh - 160px);
	font-family: var(--rd-font);
	text-align: left;
	background: transparent linear-gradient(42deg, #10569E 0%, #029EE1 100%) 0% 0% no-repeat padding-box;
}

.kb-nav {
	flex: 0 0 20%;
	padding: 4.5% 2.5%;
	box-sizing: border-box;
}
.kb-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.kb-nav li {
	margin: 0;
	padding: 0;
	float: none;
}
.kb-nav .kb-item a {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 16px;
	border-radius: 16px;
	color: #FFFFFF;
	text-decoration: none;
	font-size: 16px;
	font-weight: 500;
}
.kb-nav .kb-item a:hover {
	background-color: var(--rd-blue);
	color: #FFFFFF;
	border-radius: 16px;
}
.kb-nav .kb-item.active > a {
	background-color: var(--rd-blue);
	font-weight: 800;
	border-radius: 16px;
}
.kb-nav .kb-item .label {
	flex: 1 1 auto;
}
.kb-nav .kb-item .ico {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.kb-nav .kb-item .chev {
	width: 11px;
	height: 11px;
	flex: 0 0 auto;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.kb-nav .kb-item .ico.grid {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg id='Menu_Icon_Uebersicht' transform='translate(18282 16846)'%3E%3Cg id='Gruppe_2693' data-name='Gruppe 2693'%3E%3Crect id='Rechteck_3464' data-name='Rechteck 3464' width='24' height='24' transform='translate(-18282 -16846)' fill='none'/%3E%3Cpath id='Pfad_3171' data-name='Pfad 3171' d='M138.357,1.585h7.485V7.2h-7.485Zm-9.357,0h7.485v9.357H129Zm9.357,7.485h7.485v9.357h-7.485ZM129,12.813h7.485v5.614H129Zm1.871-3.743h3.743V3.456h-3.743Zm9.357,7.485h3.743V10.942h-3.743Zm0-11.228h3.743V3.456h-3.743Zm-9.357,11.228h3.743V14.684h-3.743Z' transform='translate(-18407.422 -16844.008)' fill='%23fff'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.kb-nav .kb-item .ico.bookings {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4M9 15l2 2 4-4'/%3E%3C/svg%3E");
}
.kb-nav .kb-item .ico.trailer {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='Rechteck_125' data-name='Rechteck 125' width='20' height='18.278' fill='%23fff'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Menu_Icon_Anhaenger' transform='translate(18282 16738)'%3E%3Crect id='Rechteck_3466' data-name='Rechteck 3466' width='24' height='24' transform='translate(-18282 -16738)' fill='none'/%3E%3Cg id='Gruppe_2689' data-name='Gruppe 2689' transform='translate(-18280 -16735)'%3E%3Cg id='Gruppe_151' data-name='Gruppe 151' clip-path='url(%23clip-path)'%3E%3Cpath id='Pfad_110' data-name='Pfad 110' d='M20,17.168V13.612H16.3V0H0V15.65H3.6a3.133,3.133,0,0,0,6.184,0h8.181v1.61a1.009,1.009,0,0,0,2.017,0v-.092M2.038,2.038H14.264V8.467H2.038Zm4.656,14.2A1.111,1.111,0,1,1,7.8,15.13,1.113,1.113,0,0,1,6.694,16.24m7.57-2.629H9.424A3.129,3.129,0,0,0,5.2,12.359a3.092,3.092,0,0,0-1.253,1.253H2.028V10.494H14.264Z' transform='translate(0 0)' fill='%23fff'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.kb-nav .kb-item .ico.chart {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 20V10M10 20V4M16 20v-7M22 20H2'/%3E%3C/svg%3E");
}
.kb-nav .kb-item .ico.services {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2'%3E%3Crect x='3' y='4' width='18' height='14' rx='2'/%3E%3Cpath d='M8 21h8M12 18v3'/%3E%3C/svg%3E");
}
.kb-nav .kb-item .ico.user {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24' height='24' viewBox='0 0 24 24'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect id='Rechteck_3287' data-name='Rechteck 3287' width='20' height='20' fill='%23fff'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Menu_Icon_Profil' transform='translate(18282 16664)'%3E%3Crect id='Rechteck_3467' data-name='Rechteck 3467' width='24' height='24' transform='translate(-18282 -16664)' fill='none'/%3E%3Cg id='Gruppe_2691' data-name='Gruppe 2691' transform='translate(-18280 -16662)'%3E%3Cg id='Gruppe_2358' data-name='Gruppe 2358' clip-path='url(%23clip-path)'%3E%3Cpath id='Pfad_3134' data-name='Pfad 3134' d='M3.85,15.1A10.433,10.433,0,0,1,6.7,13.563a9.953,9.953,0,0,1,6.6,0A10.433,10.433,0,0,1,16.15,15.1a7.706,7.706,0,0,0,1.362-2.325A7.841,7.841,0,0,0,18,10a7.714,7.714,0,0,0-2.337-5.663A7.714,7.714,0,0,0,10,2,7.714,7.714,0,0,0,4.337,4.337,7.714,7.714,0,0,0,2,10a7.841,7.841,0,0,0,.488,2.775A7.727,7.727,0,0,0,3.85,15.1M7.512,9.988A3.383,3.383,0,0,1,6.5,7.5,3.456,3.456,0,0,1,10,4a3.456,3.456,0,0,1,3.5,3.5A3.456,3.456,0,0,1,10,11,3.384,3.384,0,0,1,7.512,9.988M10,20a9.723,9.723,0,0,1-3.9-.788A9.978,9.978,0,0,1,.788,13.9,9.723,9.723,0,0,1,0,10,9.723,9.723,0,0,1,.788,6.1,9.978,9.978,0,0,1,6.1.788,9.723,9.723,0,0,1,10,0a9.723,9.723,0,0,1,3.9.788A9.978,9.978,0,0,1,19.212,6.1,9.723,9.723,0,0,1,20,10a9.723,9.723,0,0,1-.788,3.9A9.978,9.978,0,0,1,13.9,19.212,9.723,9.723,0,0,1,10,20m2.5-2.387A7.561,7.561,0,0,0,14.65,16.5a7.561,7.561,0,0,0-2.15-1.113A7.942,7.942,0,0,0,10,15a7.942,7.942,0,0,0-2.5.387A7.561,7.561,0,0,0,5.35,16.5,7.561,7.561,0,0,0,7.5,17.613,7.942,7.942,0,0,0,10,18a7.942,7.942,0,0,0,2.5-.387M11.075,8.575A1.458,1.458,0,0,0,11.5,7.5a1.5,1.5,0,1,0-3,0,1.521,1.521,0,0,0,2.575,1.075' fill='%23fff'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.kb-nav .kb-item .ico.logout {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4M16 17l5-5-5-5M21 12H9'/%3E%3C/svg%3E");
}
.kb-nav .kb-child a {
	display: block;
	padding: 9px 18px 9px 46px;
	color: #FFFFFF;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	border-radius: 16px;
}
.kb-nav .kb-child a:hover {
	background: var(--rd-cyan);
	color: #FFFFFF;
}
.kb-nav .kb-child.active a {
	background: var(--rd-cyan);
	font-weight: 800;
}

.kb-content {
	flex: 1 1 auto;
	min-width: 0;
	padding: 4.5% 2.5%;
	box-sizing: border-box;
}
.kb-head h1 {
	margin: 0 0 6px 0;
	padding: 0;
	color: #FFFFFF;
	font-family: var(--rd-font);
	font-size: 40px;
	font-weight: 900;
	text-transform: none;
	text-align: left;
}
.kb-head p {
	margin: 0 0 28px 0;
	color: #FFFFFF;
	font-size: 16px;
	font-weight: 600;
}

/* Karten + Panels */
.kb-card {
	background: #FFFFFF;
	border-radius: 18px;
	padding: 26px 30px;
	margin: 0 0 24px 0;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	/*max-width: 1160px;*/
	box-sizing: border-box;
}

.kb-card * {
	font-size: 16px;
}

.kb-detailcard {
	background: none;
	padding: 0;
	margin: 0;
	box-shadow: none;
}

/* Buchungsdetails im Seiten-Kontext (Direktaufruf mit reservationPk, Vermieter-Buchungsliste):
   dort fehlt das weisse Modal darunter, also wieder als Karte zeichnen. Im Modal bleibt
   .kb-detailcard flaechenlos, sonst Karte in Karte. */
.kb-content > .kb-detailcard {
	background: #FFFFFF;
	padding: 26px 30px;
	margin: 0 0 24px 0;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
}

.kb-card .kb-card-head {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 18px;
}
.kb-card.kb-revcard .kb-card-head {
	align-items: flex-start;
}
.kb-card .kb-card-head h2 {
	margin: 0;
	padding: 0;
	font-family: var(--rd-font);
	font-size: 19px;
	font-weight: 800;
	color: var(--rd-text);
	text-transform: none;
	text-align: left;
}
.kb-card .kb-card-head .spacer {
	flex: 1 1 auto;
}
.kb-card .Textnormal {
	font-size: 16px;
}
.kb-panel {
	border: 1px solid #D9DEE4;
	border-radius: 12px;
	padding: 2.5% 3%;
	margin: 0 0 15px 0;
	box-sizing: border-box;
}
.kb-panel h3 {
	margin: 0 0 12px 0;
	padding: 0;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	color: var(--rd-blue);
	text-transform: none;
}

/* Status-Badges: Zustaende + Buchungsarten (Farb-Legende XD Screen 01 Vermieter) */
.kb-badge {
	display: inline-block;
	border: 1px solid var(--rd-text);
	border-radius: 16px;
	padding: 5px 21px;
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
	line-height: 1.3;
}
/* Buchungsart-Farben = Farblegende XD Vermieter Seite 1 (User-Vorgabe 2026-08-17) */
.kb-badge.type-booked {
	color: #2568C3;
	border-color: #2568C3;
}
.kb-badge.type-paid {
	color: #50C6F4;
	border-color: #50C6F4;
}
.kb-badge.type-freeofcharge {
	color: #8FA800;
	border-color: #D4F716;
}
.kb-badge.type-service {
	color: #F0AE30;
	border-color: #F0AE30;
}
.kb-badge.type-defect {
	color: #E25077;
	border-color: #E25077;
}
.kb-badge.type-internal {
	color: #288481;
	border-color: #288481;
}
.kb-badge.state-active {
	color: #4CBB57;
	border-color: #4CBB57;
}

/* Buttons */
.kb-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	/*gap: 10px;*/
	background: var(--rd-blue);
	border: 1px solid var(--rd-blue);
	border-radius: 22px !important;
	padding: 10px 26px;
	font-size: 16px;
	font-weight: 800;
	color: #FFFFFF;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
	min-width: 250px;
	margin: 0;
	text-align: center;
}
.kb-button:hover {
	text-decoration: none;
	background-color: var(--rd-cyan);
	border-color: var(--rd-cyan);
	color: #FFFFFF;
}
.kb-button.disabled,
.kb-button.disabled:hover {
	background-color: #C7CDD4;
	border-color: #C7CDD4;
	color: #FFFFFF;
	cursor: default;
}
.kb-button.outline {
	background-color: #FFFFFF;
	color: var(--rd-blue);
}
.kb-button.outline:hover {
	background-color: var(--rd-blue);
	color: #FFFFFF;
}
.kb-button.back {
	background-color: #FFFFFF;
	border-color: var(--rd-text);
	color: var(--rd-text);
}
.kb-button.back:hover {
	border-color: var(--rd-blue);
	background-color: var(--rd-blue);
	color: #FFFFFF;
}
.kb-button.danger {
	background-color: #E0355E;
	border-color: #E0355E;
}
.kb-button.danger:hover {
	background-color: #C22045;
	border-color: #C22045;
}
.kb-button.rebook {
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 20px auto;
	padding-left: 45px;
	background-image: url(../images/redesign2026/icons/reload.svg);
}
.kb-button.kb-filter {
	width: auto;
	min-width: 0;
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 20px auto;
	padding-left: 45px !important;
	background-image: url(../images/redesign2026/icons/filter-closed.svg);
}
.kb-button.kb-filter:hover {
	background-image: url(../images/redesign2026/icons/filter-closed-white.svg);
}
.kb-button.kb-filter.toggle-expanded {
	background-size: 13px auto;
	background-image: url(../images/redesign2026/icons/filter-opened.svg);
}

/* Toolbar (Filter/Suche/Primaeraktion) */
.kb-toolbar {
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
}
.kb-toolbar .kb-search {
	position: relative;
}
.kb-toolbar .kb-search input {
	width: 260px;
	padding: 10px 10px 10px 40px;
	border-radius: 15px;
} /* Feld-Optik = Standard; nur Breite + Platz fuer die Lupe */
.kb-toolbar .kb-search::before {
	content: '';
	position: absolute;
	z-index: 10; /* das Feld ist position:relative und wuerde die Lupe sonst verdecken */
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	background: url(../images/redesign2026/icons/search.svg) center / contain no-repeat;
}
.kb-toolbar .spacer {
	flex: 1 1 auto;
}

/* Countdown-Widget (Mieter-Dashboard, XD-Update Screen 01): hellblaue Pille mit
   Trennstrichen, Einheiten darunter ausserhalb der Flaeche. Masse aus dem XD
   abgemessen - Pille 248x70, Trennstrich 1px auf 57 Prozent Hoehe. */
.kb-countdown {
	display: inline-flex;
	align-items: flex-start;
	background: none;
	border: 0;
	border-radius: 0;
	padding: 0;
	gap: 0;
}
.kb-countdown .unit {
	text-align: center;
}
.kb-countdown .num {
	font-family: var(--rd-font);
	font-size: 40px;
	font-weight: 900;
	color: var(--rd-text);
	line-height: 1.1;
	background-color: #DFF1FB;
	padding: 13px 10px;
	min-width: 83px;
	box-sizing: border-box;
}
.kb-countdown .unit:first-child .num {
	border-radius: 35px 0 0 35px;
	padding-left: 20px;
}
.kb-countdown .unit:last-child .num {
	border-radius: 0 35px 35px 0;
	padding-right: 20px;
}
.kb-countdown .unit + .unit .num {
	background-image: linear-gradient(#6E787C, #6E787C);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 1px 57%;
}
/* eigene Regel je Einheit, damit .kb-rescols .cap (fett, flex) im aktiven
   Mietvorgang die Countdown-Beschriftung nicht uebersteuert */
.kb-countdown .unit .cap {
	display: block;
	text-align: center;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 500;
	color: var(--rd-text);
	margin: 13px 0 0 0;
	padding: 0 6px;
}

/* Hinweisbanner */
.kb-note {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #DFF1FB;
	border-radius: 10px;
	padding: 14px 20px;
	margin: 0 0 22px 0;
	max-width: 1160px;
	box-sizing: border-box;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
}

/* Zurueck-Link oberhalb einer Detailkarte */
.kb-back {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 18px 0;
	color: #FFFFFF;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}
.kb-back:hover {
	color: #DFF1FB;
}
.kb-back::before {
	content: '';
	width: 16px;
	height: 12px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M24 6H2M7 1L2 6l5 5' fill='none' stroke='%23FFFFFF' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* Mietvorgangs-Karten (Mieter-Dashboard): farbiger Streifen links nur an Karten
   mit Zustandsklasse - Detail-/Formularkarten (.kb-detailcard u. a.) bleiben ohne */
.kb-card.opened,
.kb-card.started,
.kb-card.completed {
	border-left: 6px solid var(--rd-cyan);
}
.kb-card.started {
	border-left-color: #4CBB57;
}
.kb-card.opened {
	border-left-color: #F19A38;
}
.kb-rescard-head {
	display: flex;
	align-items: center;
	align-content: center;
	gap: 14px;
	margin-bottom: 18px;
}
.kb-rescard-head h2 {
	margin: 0;
	padding: 0;
	font-family: var(--rd-font);
	font-size: 18px;
	font-weight: 800;
	color: var(--rd-text);
	text-transform: none;
	text-align: left;
}
.kb-rescard-head .spacer {
	flex: 1 1 auto;
}
.kb-rescard-head .ref {
	font-size: 18px;
	font-weight: 800;
	color: var(--rd-text);
}
.kb-rescols {
	display: grid;
	grid-template-columns: 1.1fr 1.1fr 1.15fr 1.35fr;
	gap: 3%;
	margin-bottom: 0;
}
.kb-rescols .col {
	min-width: 0;
}
.kb-rescols .cap {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
	margin-bottom: 8px;
}
.kb-rescols .period > .sub.dep {
	padding-bottom: 20px;
	margin-bottom: 5px;
	border-left: 2px dotted #000000;
	padding-left: 13px;
	margin-left: 8px;
}
.kb-rescols .cap.center {
	justify-content: center;
}
.kb-rescols .cap .ico {
	width: 18px;
	height: 18px;
	margin-top: -3px;
	flex: 0 0 auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.kb-rescols .cap .ico.trailer {
	background-image: url('../images/redesign2026/icons/trailer.svg');
}
.kb-rescols .cap .ico.pin {
	background-image: url('../images/redesign2026/icons/poi.svg');
}
.kb-rescols .cap .ico.clock {
	background-image: url('../images/redesign2026/icons/time.svg');
}
.kb-rescols .val {
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-text);
	margin-bottom: 2px;
}
.kb-rescols .sub {
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
	line-height: 1.5;
}
.kb-rescols .cap + .sub {
	padding-left: 23px;
}
.kb-rescols .sub.light {
	color: #666666;
}
.kb-rescols .badge-line {
	margin-top: 10px;
}
.kb-rescols .price {
	font-family: var(--rd-font);
	font-size: 22px;
	font-weight: 900;
	color: var(--rd-text);
	text-align: center;
}
/* Gutschein-Hinweis unter dem Preis (Muster der Gesamtpreis-Karte im Buchungs-Modal) */
.kb-rescols .price-coupon {
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-gray);
	text-align: center;
	margin-top: 4px;
}
.kb-rescols .price-coupon span {
	white-space: nowrap;
}
.kb-rescols .kb-countdown {
	display: flex;
	justify-content: center;
}

/* Steuerungsbereich: Zustands-UI aus dashboard.reservation.tenant.html.php im Karten-Look */
.kb-rescontrols {
	margin: 24px 0 0 0;
	padding-left: 3%;
}
.kb-rescontrols .instruction {
	margin-bottom: 10px;
	font-size: 16px;
}
.kb-rescontrols .Success,
.kb-rescontrols .Information,
.kb-rescontrols .Warning {
	border-radius: 10px;
}
.kb-rescontrols input.Button {
	display: inline-block;
	float: none;
	width: auto;
	background: var(--rd-blue);
	border: 1px solid var(--rd-blue);
	border-radius: 22px !important;
	padding: 10px 26px;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	color: #FFFFFF;
	cursor: pointer;
}
.kb-rescontrols input.Button:hover {
	background: var(--rd-cyan);
	border-color: var(--rd-cyan);
}
.kb-rescontrols input#ButtonFinish {
	background-color: #E0355E;
	border-color: #E0355E;
	background-image: url(../images/redesign2026/icons/stop.svg);
}
.kb-rescontrols input#ButtonFinish:hover {
	background-color: #C22045;
	border-color: #C22045;
}
.kb-rescontrols .timer {
	font-family: var(--rd-font);
	font-weight: 800;
}
.kb-rescard-foot {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-top: 24px;
	padding-left: 3%;
}
.kb-rescontrols .kb-rescard-foot {
	padding-left: 0;
}

/* Buchungs-Kacheln (Mieter, XD 02/03) */
.kb-toolbar .kb-button.toggle, .kb-toolbar .kb-button.toggle.toggle-collapsed, .kb-toolbar .kb-button.toggle.toggle-expanded {
	display: inline-flex;
	width: auto;
	float: none;
	margin: 0;
	padding: 10px 26px;
	background-color: #FFFFFF;
	color: var(--rd-blue);
	font-size: 15px;
}
.kb-toolbar .kb-button.toggle:hover, .kb-toolbar .kb-button.toggle.toggle-expanded {
	background-color: var(--rd-blue);
	color: #FFFFFF;
}
.kb-bookingbar {
	padding: 18px 22px;
}
.kb-filterrow {
	display: flex;
	gap: 22px;
	flex-wrap: wrap;
	border: 1px solid #D9DEE4;
	border-radius: 12px;
	padding: 14px 18px;
	margin-top: 14px;
}
.kb-filterrow.toggle-hidden {
	display: none;
}
.kb-filterrow .f label {
	display: block;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
	margin-bottom: 5px;
}
.kb-filterrow .f select {
	min-width: 150px;
} /* Feld-Optik = Standard */
.kb-tiles {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.kb-tile {
	background: #FFFFFF;
	border-radius: 16px;
	padding: 20px 20px 22px 20px;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.kb-tile .tile-head {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	justify-content: space-between;
	margin-bottom: 12px;
}
.kb-tile .tile-head .num {
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-text);
	line-height: 1.35;
}
.kb-tile .tile-head .num .cap {
	font-size: 13px;
}
.kb-tile .tile-model {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-bottom: 15px;
}
.kb-tile .tile-model .illu {
	width: 64px;
	height: 40px;
	object-fit: contain;
	flex: 0 0 auto;
}
.kb-tile .tile-model .model {
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
}
.kb-tile .tile-rows {
	flex: 1 1 auto;
}
.kb-tile .trow {
	display: flex;
	gap: 10px;
	margin-bottom: 10px;
}
.kb-tile .trow .cap {
	flex: 0 0 72px;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
}
.kb-tile .trow .val {
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
	min-width: 0;
}
.kb-tile .trow .val a.pdf {
	color: var(--rd-blue);
	font-weight: 800;
	text-decoration: underline;
}
.kb-tile .tile-actions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	margin-top: 14px;
}
.kb-tile .tile-actions .kb-button {
	width: 80%;
}

/* Detailansicht (XD 04) */
.kb-detailcols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}
.kb-panel .cap {
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
	margin-bottom: 5px;
}
.kb-panel .val {
	font-size: 14px;
}
.site-settings .kb-panel .cap,
.site-settings .kb-panel .val {
	font-size: 16px;
}
.kb-fieldgrid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px 20px;
	margin-top: 6px;
}
.kb-fieldgrid.cols3 {
	grid-template-columns: 1fr 1fr 1fr;
}
.kb-fieldgrid .cap {
	margin-bottom: 2px;
}
.kb-fieldgrid .val {
	margin-bottom: 0;
}
.kb-maplink {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--rd-blue);
	font-size: 14px !important;
	font-weight: 800;
	text-decoration: underline;
}
.kb-maplink::before {
	content: '';
	width: 16px;
	height: 16px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Cpath d='M9 4L3 6v14l6-2 6 2 6-2V4l-6 2-6-2z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/svg%3E") center / contain no-repeat;
}
.kb-costrows {
	max-width: 320px;
}
.kb-modal .kb-costrows {
	max-width: 100%;
}
.kb-costrows .crow {
	display: flex;
	justify-content: space-between;
	gap: 30px;
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
	padding: 4px 0;
}
/* Preisspalte nicht umbrechen: mobil brach der Betrag und das Euro-Zeichen auf zwei Zeilen */
.kb-costrows .crow > span + span {
	white-space: nowrap;
}
.kb-modal .kb-costrows .crow {
	font-size: 16px;
}
.kb-costrows .crow + .crow.total {
	border-top: 1px solid #D9DEE4;
	margin-top: 6px;
	padding-top: 10px;
}
.kb-costrows .crow.total {
	font-weight: 900;
}
.kb-timer-cap {
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-text);
	margin-bottom: 8px;
}

.kb-costinfo {
	display: block;
	font-size: 13px !important;
	font-style: italic;
	font-weight: 600;
	color: var(--rd-text);
	text-align: left;
	margin-top: 10px;
}

/* Anhaenger mieten im Kundenbereich (XD Mieter 05): Suchkarte + Standort-Karte */
.kb-rentcols {
	display: grid;
	grid-template-columns: 400px 1fr;
	gap: 24px;
	align-items: stretch;
	max-width: 1400px;
}
.kb-rentsearch {
	position: relative;
	margin: 0;
}
.kb-renttitle {
	margin: 0 0 20px 0;
	padding: 0;
	font-family: var(--rd-font);
	font-size: 19px;
	font-weight: 800;
	color: var(--rd-blue);
	text-align: center;
	text-transform: none;
}
.kb-rentsearch form.formSearch {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	background: none;
	display: block;
}
.kb-rentsearch .filter-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px 14px;
}
.kb-rentsearch .field {
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-width: 0;
}
.kb-rentsearch .field.location, .kb-rentsearch .field.model, .kb-rentsearch .field.submit {
	grid-column: 1 / -1;
}
.kb-rentsearch .field label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
}
.kb-rentsearch .field .ico {
	width: 16px;
	height: 16px;
	flex: 0 0 auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.kb-rentsearch .field .ico.pin {
	background-image: url('../images/redesign2026/icons/poi.svg');
}
.kb-rentsearch .field .ico.trailer {
	background-image: url('../images/redesign2026/icons/trailer.svg');
}
.kb-rentsearch .field .ico.calendar {
	background-image: url('../images/redesign2026/icons/date.svg');
}
.kb-rentsearch .field .ico.clock {
	background-image: url('../images/redesign2026/icons/time.svg');
}
.kb-rentsearch .field input[type="text"], .kb-rentsearch .field input[type="date"], .kb-rentsearch .field select, .kb-rentsearch .field .model-select {
	height: 42px;
	border: 1px solid #1A1A1A;
	border-radius: 10px;
	padding: 0 14px;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
	text-align: center;
	text-align-last: center;
	background-color: #FFFFFF;
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	margin: 0;
}
.kb-rentsearch .field .model-select {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.kb-rentsearch .field input:focus, .kb-rentsearch .field select:focus {
	outline: none;
	border-color: var(--rd-blue);
}
.kb-rentsearch .filter-submit {
	width: 100%;
	height: 44px;
	background: var(--rd-blue);
	border: 0;
	border-radius: 22px !important;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: #FFFFFF;
	cursor: pointer;
}
.kb-rentsearch .filter-submit:hover {
	background: var(--rd-cyan);
}
.kb-rentsearch .model-panel {
	top: 40px;
	left: 10px;
	right: 10px;
	bottom: auto;
	max-height: 70vh;
	overflow-y: auto;
}
.kb-rentmap {
	padding: 12px;
}
#kbRentMap {
	width: 100%;
	height: 100%;
	min-height: 480px;
	border-radius: 12px;
}

/* Mieter-Profil (XD 06): bestehendes Formular im Karten-Look */
/*.kb-profile {
	max-width: 1160px;
}*/
.kb-profile .Columns {
	display: flex;
	gap: 24px;
	align-items: flex-start;
}
.kb-profile .Columns .Column50Left, .kb-profile .Columns .Column50Right {
	float: none;
	width: 50%;
	box-sizing: border-box;
}
.kb-profile fieldset, .kb-profile fieldset.bg-grey {
	background: #FFFFFF;
	border: 0;
	border-radius: 18px;
	padding: 24px 28px;
	margin: 0 0 24px 0;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	max-width: none;
	box-sizing: border-box;
}
.kb-profile fieldset legend {
	font-size: 19px;
	font-weight: 800;
	color: var(--rd-text);
	padding: 0;
	margin-bottom: 8px;
	float: left;
	width: 100%;
}
.kb-profile fieldset legend + *, .kb-profile fieldset legend ~ div {
	clear: both;
}
.kb-profile input.Button {
	display: inline-block;
	float: none;
	background: var(--rd-blue);
	border: 1px solid var(--rd-blue);
	border-radius: 22px !important;
	padding: 12px 34px;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	color: #FFFFFF;
	cursor: pointer;
	width: auto;
	margin: 0;
}
.kb-profile input.Button:hover {
	background: var(--rd-cyan);
	border-color: var(--rd-cyan);
}
.kb-profile > h3.Center {
	color: #FFFFFF;
}
.kb-profile a.Button {
	display: inline-block;
	background: #FFFFFF;
	border: 1px solid var(--rd-blue);
	border-radius: 22px !important;
	padding: 12px 34px;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-blue) !important;
	text-decoration: none;
}

/* --- Mieter-Profil (XD Mieter 05): schmale Spalte mit Profilbild + Statistiken links,
   Datenkarte rechts, Feldraster wie in der Registrierung --- */
.kb-profilegrid {
	display: grid;
	grid-template-columns: 23% 1fr;
	gap: 24px;
	align-items: start;
	/*max-width: 1160px;*/
}
.kb-profileside .kb-card {
	max-width: none;
}
.kb-imagecard .kb-imagebox {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 150px;
	border: 1px solid #D9DEE4;
	border-radius: 12px;
	padding: 14px;
	margin-bottom: 16px;
	box-sizing: border-box;
}
.kb-imagecard .kb-imagebox img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}
.kb-imagecard .kb-imagebox.empty {
	background: #DFF1FB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M3.85,15.1A10.433,10.433,0,0,1,6.7,13.563a9.953,9.953,0,0,1,6.6,0A10.433,10.433,0,0,1,16.15,15.1a7.706,7.706,0,0,0,1.362-2.325A7.841,7.841,0,0,0,18,10a7.714,7.714,0,0,0-2.337-5.663A7.714,7.714,0,0,0,10,2,7.714,7.714,0,0,0,4.337,4.337,7.714,7.714,0,0,0,2,10a7.841,7.841,0,0,0,.488,2.775A7.727,7.727,0,0,0,3.85,15.1M7.512,9.988A3.383,3.383,0,0,1,6.5,7.5,3.456,3.456,0,0,1,10,4a3.456,3.456,0,0,1,3.5,3.5A3.456,3.456,0,0,1,10,11,3.384,3.384,0,0,1,7.512,9.988M10,20a9.723,9.723,0,0,1-3.9-.788A9.978,9.978,0,0,1,.788,13.9,9.723,9.723,0,0,1,0,10,9.723,9.723,0,0,1,.788,6.1,9.978,9.978,0,0,1,6.1.788,9.723,9.723,0,0,1,10,0a9.723,9.723,0,0,1,3.9.788A9.978,9.978,0,0,1,19.212,6.1,9.723,9.723,0,0,1,20,10a9.723,9.723,0,0,1-.788,3.9A9.978,9.978,0,0,1,13.9,19.212,9.723,9.723,0,0,1,10,20m2.5-2.387A7.561,7.561,0,0,0,14.65,16.5a7.561,7.561,0,0,0-2.15-1.113A7.942,7.942,0,0,0,10,15a7.942,7.942,0,0,0-2.5.387A7.561,7.561,0,0,0,5.35,16.5,7.561,7.561,0,0,0,7.5,17.613,7.942,7.942,0,0,0,10,18a7.942,7.942,0,0,0,2.5-.387M11.075,8.575A1.458,1.458,0,0,0,11.5,7.5a1.5,1.5,0,1,0-3,0,1.521,1.521,0,0,0,2.575,1.075' fill='%2329ABE2'/%3E%3C/svg%3E") center / 72px auto no-repeat;
}
.kb-imagecard .kb-imageactions {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}
/* Datei-Feld als Pillen-Button "Bild hochladen" (der unsichtbare Input liegt darueber) */
.kb-imagecard .FieldFile {
	width: 100%;
	min-height: 44px;
	background: none;
	text-align: center;
}
.kb-imagecard .FieldFile:hover {
	background: none;
}
.kb-imagecard .FieldFileInput {
	width: 100%;
	height: 44px;
}
.kb-imagecard .FieldFileSelect {
	width: 100%;
	height: 44px;
	margin: 0;
	/* Legacy-Overlay-Optik abschalten: weisser Mehrfach-Textschatten und Icon */
	text-shadow: none;
	background: var(--rd-blue) !important;
	border: 1px solid var(--rd-blue);
	border-radius: 22px !important;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: #FFFFFF;
	cursor: pointer;
	text-align: center;
}
.kb-imagecard .FieldFile:hover .FieldFileSelect {
	background: var(--rd-cyan) !important;
	border-color: var(--rd-cyan);
}
.kb-imagecard .FieldFilePreview {
	display: none;
}
.kb-imagecard .kb-imageclear {
	font-family: var(--rd-font);
	font-size: 13px;
	font-weight: 500;
	color: var(--rd-gray);
	text-decoration: underline;
}
.kb-imagecard .kb-imageclear:hover {
	color: var(--rd-blue);
}
/* Panels in der Datenkarte: Rahmen wie .kb-panel, keine zweite Kartenoptik */
.kb-profilemain fieldset.kb-panel {
	background: none;
	border: 1px solid #D9DEE4;
	border-radius: 12px;
	box-shadow: none;
	padding: 2.5% 3%;
	margin: 0 0 15px 0;
	max-width: none;
}
.kb-profilemain fieldset.kb-panel legend {
	margin-bottom: 14px;
}
/* Feldraster: gleiche Werte wie .registration2026-content .row/.pair */
.kb-profile .row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin-bottom: 20px;
}
.kb-profile .row:last-child {
	margin-bottom: 0;
}
.kb-profile .row > * {
	flex: 1 1 0;
	min-width: 0;
}
.kb-profile .row .flex-row + .flex-row {
	margin: 0;
}
.kb-profile .row.three > .floating-label:nth-child(3) {
	flex: 1.6 1 0;
}
.kb-profile .row .pair {
	display: flex;
	gap: 22px;
}
.kb-profile .row .pair > .floating-label.wide {
	flex: 2.4 1 0;
	min-width: 0;
}
.kb-profile .row .pair > .floating-label.narrow {
	flex: 1 1 0;
	min-width: 0;
}
.kb-profile .duty-note {
	text-align: right;
	margin-bottom: 14px;
}
/* Bankverbindung im Vermieter-Profil: reine Ansicht - der gesperrte Haken wird wie die
   gesperrten Felder ausgegraut */
.kb-profile .Checkbox:disabled + label {
	opacity: 0.35;
}
/* Vermieter-Buchungsliste (XD Vermieter 03): Zeilen-Tabelle */
.kb-tablecard {
	padding: 18px 24px 22px 24px;
	max-width: 1400px;
}
.kb-table {
	width: 100%;
}
.kb-thead {
	display: grid;
	grid-template-columns: 0.8fr 1.3fr 1.3fr 1.3fr 1fr 0.9fr;
	gap: 14px;
	padding: 10px 12px;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
	border-bottom: 1px solid #D9DEE4;
}
.kb-thead a {
	color: var(--rd-text);
	text-decoration: none;
}
.kb-trow {
	display: grid;
	grid-template-columns: 0.8fr 1.3fr 1.3fr 1.3fr 1fr 0.9fr;
	gap: 14px;
	align-items: center;
	padding: 14px 12px;
	border-bottom: 1px solid #EDF0F4;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
}
.kb-trow:last-child {
	border-bottom: 0;
}
.kb-trow .sub {
	color: #666666;
	font-size: 13px;
}
.kb-trow .badge-line {
	margin-top: 6px;
}
.kb-trow .c.action {
	text-align: right;
}
.kb-trow .c.action .kb-button {
	padding: 8px 20px;
	font-size: 13px;
}

/* Anhaengerflotte-Statuskarten (XD Vermieter 12/13); Rahmenfarbe = Buchungsart */
.kb-fleet {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	/*max-width: 1400px;*/
}
.kb-fleetcard {
	background: #FFFFFF;
	border-radius: 16px;
	border-left: 6px solid #D9DEE4;
	padding: 20px 22px;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	display: flex;
	flex-direction: column;
	min-width: 0;
	font-family: var(--rd-font);
}
.kb-fleetcard.status-booked {
	border-left-color: #29ABE2;
}
.kb-fleetcard.status-paid {
	border-left-color: #4CBB57;
}
.kb-fleetcard.status-freeofcharge {
	border-left-color: #AFCB2E;
}
.kb-fleetcard.status-service {
	border-left-color: #F19A38;
}
.kb-fleetcard.status-defect {
	border-left-color: #E0355E;
}
.kb-fleetcard.status-internal {
	border-left-color: #9B9B9B;
}
.kb-fleetcard .fc-head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 14px;
}
.kb-fleetcard .fc-head .illu {
	width: 56px;
	height: 38px;
	object-fit: contain;
	flex: 0 0 auto;
}
.kb-fleetcard .fc-head .fc-title {
	flex: 1 1 auto;
	min-width: 0;
}
.kb-fleetcard .fc-head .name {
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-blue);
}
.kb-fleetcard .fc-head .sub {
	font-size: 13px;
	font-weight: 500;
	color: #666666;
}
.kb-fleetcard .fc-rows {
	flex: 1 1 auto;
}
.kb-fleetcard .frow {
	display: flex;
	gap: 10px;
	justify-content: space-between;
	padding: 4px 0;
	font-size: 13px;
}
.kb-fleetcard .frow .cap {
	font-weight: 800;
	color: var(--rd-text);
}
.kb-fleetcard .frow .val {
	font-weight: 500;
	color: var(--rd-text);
	text-align: right;
	min-width: 0;
}
.kb-fleetcard .fc-foot {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 14px;
}
.kb-fleetcard .fc-foot .spacer {
	flex: 1 1 auto;
}
.kb-fleetcard .fc-foot .kb-button {
	padding: 8px 20px;
	font-size: 13px;
}

/* Reskin der Bestands-Listen (.list) im Kundenbereich: Standorte/Mieter/Gutscheine */
.kb-listwrap .list {
	display: block;
	background: #FFFFFF;
	border-radius: 16px;
	padding: 10px 24px;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.12);
	max-width: 1400px;
	box-sizing: border-box;
	font-family: var(--rd-font);
}
.kb-listwrap .list .row {
	display: flex;
	gap: 16px;
	align-items: center;
	padding: 13px 4px;
	border-bottom: 1px solid #EDF0F4;
}
.kb-listwrap .list .row:last-child {
	border-bottom: 0;
}
.kb-listwrap .list .row.header {
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
	border-bottom: 1px solid #D9DEE4;
	background: none !important;
}
.kb-listwrap .list .row.header .item {
	color: var(--rd-text) !important;
}
.kb-listwrap .list .row.header a {
	color: var(--rd-text) !important;
	text-decoration: none;
}
.kb-listwrap .list .row .item {
	flex: 1 1 0;
	min-width: 0;
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
	float: none;
	width: auto;
	padding: 0;
}
.kb-listwrap .list .row .item.action {
	flex: 0 0 90px;
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}
.kb-listwrap .list .Icon {
	width: 34px !important;
	height: 34px !important;
	border: 1px solid var(--rd-blue);
	border-radius: 50%;
	background-color: #FFFFFF !important;
	background-size: 16px 16px !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	margin: 0 !important;
	cursor: pointer;
}
.kb-listwrap .list .Icon:hover {
	background-color: #DFF1FB;
}
.kb-listwrap .list .Icon.edit {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Cpath d='M12 20h9M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z'/%3E%3C/svg%3E") !important;
}
.kb-listwrap .list .Icon.delete {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E0355E' stroke-width='2'%3E%3Cpath d='M3 6h18M8 6V4h8v2M6 6l1 14h10l1-14M10 10v7M14 10v7'/%3E%3C/svg%3E") !important;
	border-color: #E0355E;
}
.kb-listwrap .list .Icon.info {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8h.01M12 11v6'/%3E%3C/svg%3E") !important;
}
.kb-listwrap > .Button.Back, .kb-listwrap .Button.Back {
	display: none;
}
.kb-listwrap .Button.detail-content {
	display: inline-flex;
	align-items: center;
	background: var(--rd-blue);
	border: 1px solid var(--rd-blue);
	border-radius: 22px !important;
	padding: 10px 26px;
	font-size: 14px;
	font-weight: 800;
	color: #FFFFFF;
	text-decoration: none;
}
.kb-listwrap .Button.detail-content:hover {
	background: var(--rd-cyan);
	border-color: var(--rd-cyan);
}
.kb-listwrap .Warning {
	background: #FFFFFF;
	border-radius: 16px;
	padding: 22px 26px;
	max-width: 1400px;
	box-sizing: border-box;
}

/* Vermieter-Dashboard + Auslastungsanalyse (XD Vermieter 02/18) */
.kb-kpis {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	/*max-width: 1400px;*/
	margin-bottom: 24px;
}
.kb-kpis.cols3 {
	grid-template-columns: repeat(3, 1fr);
	/*max-width: 1160px;*/
}
.kb-kpi {
	margin: 0;
	padding: 20px 22px;
	display: flex;
	flex-direction: column;
}
.kb-kpi .kpi-title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 800;
	color: var(--rd-text);
	margin-bottom: 20px;
}
.kb-kpi .kpi-title .light {
	font-weight: 500;
	color: #666666;
}
.kb-kpi .kpi-title .ico {
	width: 22px;
	height: 22px;
	margin-top: -2px;
	flex: 0 0 auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.kb-kpi .ico.trailer {
	background-image: url('../images/redesign2026/icons/trailer.svg');
}
.kb-kpi .ico.calendar {
	background-image: url('../images/redesign2026/icons/date.svg');
}
.kb-kpi .ico.check {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12l3 3 5-6'/%3E%3C/svg%3E");
}
.kb-kpi .kpi-split {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
}
.kb-kpi .kpi-split .part {
	flex: 1 1 0;
	text-align: center;
}
.kb-kpi .kpi-split .part + .part {
	border-left: 1px solid lightgrey;
}
.kb-kpi .kpi-split .num {
	font-size: 40px;
	font-weight: 900;
	color: var(--rd-blue);
	line-height: 1.1;
}
.kb-kpi .kpi-split .cap {
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
	display: inline-block;
	padding: 4px 16px;
	border: 1px solid var(--rd-text);
	border-radius: 16px;
	margin-top: 10px;
}
.kb-minibars {
	display: flex;
	align-items: flex-end;
	gap: 7px;
	height: 64px;
	flex: 1 1 auto;
	justify-content: center;
	border-bottom: 1px solid lightgrey;
}
.kb-minibars .bar {
	width: 14px;
	height: 100%;
	display: flex;
	align-items: flex-end;
	background: #EDF3F8;
	border-radius: 4px;
}
.kb-minibars .bar .fill {
	display: block;
	width: 100%;
	background: #29ABE2;
	/*border-radius: 4px;*/
}
.kb-kpi .kpi-foot {
	text-align: center;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
	margin-top: 10px;
}
.kb-availrows {
	flex: 1 1 auto;
}
.kb-availrows .arow {
	display: flex;
	align-items: baseline;
	gap: 5px;
	padding: 5px 0;
	border-bottom: 1px solid lightgrey;
	font-size: 15px;
	hyphens: auto;
	text-overflow: ellipsis;
	overflow: hidden;
}
/*.kb-availrows .arow:last-child {
	border-bottom: 0;
}*/
.kb-availrows .loc {
	flex: 1 1 auto;
	font-weight: 600;
	color: var(--rd-text);
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.kb-availrows .free {
	font-size: 17px;
	font-weight: 900;
}
.kb-availrows .free.ok {
	color: #4CBB57;
}
.kb-availrows .free.none {
	color: #E0355E;
}
.kb-availrows .total {
	color: var(--rd-text);
	font-weight: 600;
}
.kb-new {
	align-items: center;
	justify-content: center;
	gap: 10px;
	background-color: transparent;
	border: 1px solid #ffffff !important;
	text-decoration: none;
	cursor: pointer;
}
.kb-new:hover {
	text-decoration: none;
	background-color: #ffffff;
	opacity: 1;
}
.kb-new:hover .cap {
	color: var(--rd-blue);
}
.kb-new .plus {
	width: 60px;
	height: 50px;
	border-radius: 50%;
	background-color: #ffffff;
	color: var(--rd-cyan);
	font-size: 65px;
	font-weight: 500;
	display: flex;
	align-items: flex-end;
	padding: 10px 0 0 0;
	justify-content: center;
	line-height: 1;
}
.kb-new:hover .plus {
	color: var(--rd-blue);
	outline: 3px solid var(--rd-blue);
	outline-offset: -3px;
}
.kb-new .cap {
	font-size: 16px;
	font-weight: 800;
	color: #FFFFFF;
	text-align: center;
}

.kb-dashrow {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	/*max-width: 1400px;*/
	align-items: stretch;
}
.kb-dashrow .kb-card {
	margin: 0;
}
.kb-daycard .daycount {
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
}
.kb-daynav {
	display: flex;
	align-items: center;
	gap: 12px;
	border: 1px solid lightgrey;
	border-radius: 10px;
	padding: 12px 16px;
	margin-bottom: 15px;
}
.kb-daynav .label {
	flex: 1 1 auto;
	text-align: center;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
}
.kb-daynav .nav {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: #FFFFFF;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 20px 20px;
	border: 1px solid var(--rd-blue);
	color: #FFFFFF;
	font-size: 20px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	line-height: 1;
	text-indent: -1000px;
	overflow: hidden;
}
.kb-daynav .nav:hover {
	background-color: var(--rd-blue);
	color: #FFFFFF;
	opacity: 1
}
.kb-daynav .nav.prev {
	background-image: url(../images/redesign2026/icons/chevron-left-blue.svg);
	background-position: 45% 50%;
}
.kb-daynav .nav.prev:hover {
	background-image: url(../images/redesign2026/icons/chevron-left-white.svg);
}
.kb-daynav .nav.next {
	background-image: url(../images/redesign2026/icons/chevron-right-blue.svg);
	background-position: 55% 50%;
}
.kb-daynav .nav.next:hover  {
	background-image: url(../images/redesign2026/icons/chevron-right-white.svg);
}
/* Buchungszeilen des Vermieter-Dashboards: vollflaechig in der Buchungsart-Farbe
   (XD Vermieter 01), Aktionen im Kebab - deshalb Zeile als div mit data-href */
.kb-daylist .dayrow {
	display: flex;
	align-items: center;
	gap: 20px;
	border-radius: 10px;
	padding: 10px 14px;
	margin-bottom: 8px;
	text-decoration: none;
	background: #F4F7FA;
	color: #1A1A1A;
	cursor: pointer;
}
.kb-daylist .dayrow .kb-kebab {
	margin-left: auto;
}
.kb-daylist .dayrow .ticon {
	background-color: rgba(255, 255, 255, 0.75);
}
.kb-daylist .dayrow.type-booked {
	background: #2568C3;
	color: #FFFFFF;
}
.kb-daylist .dayrow.type-paid {
	background: #50C6F4;
}
.kb-daylist .dayrow.type-freeofcharge {
	background: #D4F716;
}
.kb-daylist .dayrow.type-service {
	background: #F0AE30;
}
.kb-daylist .dayrow.type-defect {
	background: #E25077;
	color: #FFFFFF;
}
.kb-daylist .dayrow.type-internal {
	background: #288481;
	color: #FFFFFF;
}
/* helle Schrift auch fuer die Unterzeile und das 24/7-Kennzeichen */
.kb-daylist .dayrow.type-booked .sub,
.kb-daylist .dayrow.type-defect .sub,
.kb-daylist .dayrow.type-internal .sub {
	/*color: rgba(255, 255, 255, 0.85);*/
	color: var(--color-font);
}
.kb-daylist .dayrow.type-booked .kb-badge,
.kb-daylist .dayrow.type-defect .kb-badge,
.kb-daylist .dayrow.type-internal .kb-badge {
	background: transparent;
	border-color: var(--rd-text);
	color: var(--rd-text);
}
.kb-daylist .dayrow.type-booked .kb-kebab > button,
.kb-daylist .dayrow.type-defect .kb-kebab > button,
.kb-daylist .dayrow.type-internal .kb-kebab > button {
	color: var(--rd-text);
}
.kb-daylist .times {
	flex: 0 0 auto;
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
	line-height: 1.5;
	text-align: left;
}
.kb-daylist .what {
	flex: 1 1 auto;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-text);
	min-width: 0;
	text-align: left;
}
.kb-daylist .what .sub {
	font-weight: 500;
	font-size: inherit;
	line-height: inherit;
}
.kb-linechart {
	display: block;
	width: auto;
	height: auto;
	max-height: 270px;
	margin: 0 auto 0 0;
	text-align: left;
}
.kb-revcard .light {
	font-weight: 500;
	color: #666666;
}
.kb-revcard .rev-total {
	margin-top: 8px;
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
}

.kb-bigkpi {
	margin: 0;
	text-align: center;
	padding: 26px 22px;
}
.kb-bigkpi .round {
	display: flex;
	width: 54px;
	height: 54px;
	margin: 0 auto 12px auto;
	border-radius: 50%;
	background: var(--rd-blue);
	align-items: center;
	justify-content: center;
}
.kb-bigkpi .round .ico {
	width: 24px;
	height: 24px;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.kb-bigkpi .round .ico.chart {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 17l5-6 4 3 6-8'/%3E%3Cpath d='M15 6h4v4'/%3E%3C/svg%3E");
}
.kb-bigkpi .round .ico.calendar {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.kb-bigkpi .round .ico.euro {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M17 5.5A7 7 0 0 0 8 12a7 7 0 0 0 9 6.5M4 10h8M4 14h7'/%3E%3C/svg%3E");
}
.kb-bigkpi .cap {
	font-size: 15px;
	font-weight: 800;
	color: var(--rd-blue);
	margin-bottom: 8px;
}
.kb-bigkpi .big {
	font-size: 46px;
	font-weight: 900;
	color: var(--rd-text);
	line-height: 1.15;
}
.kb-delta {
	margin-top: 8px;
	font-size: 13px;
	font-weight: 800;
	color: #666666;
}
.kb-delta.up {
	color: #4CBB57;
}
.kb-delta.down {
	color: #E0355E;
}
.kb-bars {
	display: flex;
	position: relative;
	align-items: flex-end;
	gap: 10px;
	height: 220px;
	padding-top: 10px;
}
.kb-bars:after {
	content: '';
	position: absolute;
	left: 0px;
	bottom: 22px;
	width: 100%;
	border-bottom: 1px solid lightgrey;
}
.kb-bars .bcol {
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	height: 100%;
}
.kb-bars .bwrap {
	flex: 1 1 auto;
	width: 100%;
	max-width: 30px;
	display: flex;
	align-items: flex-end;
}
.kb-bars .bfill {
	display: block;
	width: 100%;
	background: #29ABE2;
	border-radius: 5px 5px 0 0;
}
.kb-bars .blabel {
	font-size: 11px;
	font-weight: 600;
	color: #666666;
}

/* Services-Akkordeon (XD Vermieter 19) */
/*.kb-services {
	max-width: 1160px;
}*/
.kb-acc {
	border: 1px solid #D9DEE4;
	border-radius: 12px;
	margin-bottom: 14px;
	overflow: hidden;
}
.kb-acc .kb-acc-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 22px;
	font-size: 16px;
	font-weight: 800;
	color: var(--rd-text);
	cursor: pointer;
	background: #FFFFFF;
	width: auto;
	float: none;
	margin: 0;
}
.kb-acc .kb-acc-head:hover {
	background: #F4F9FD;
}
.kb-acc .kb-acc-head .chev {
	width: 14px;
	height: 14px;
	flex: 0 0 auto;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform 0.2s ease;
}
.kb-acc .kb-acc-head.toggle-expanded .chev {
	transform: rotate(180deg);
}
.kb-acc .kb-acc-body {
	padding: 4px 22px 20px 22px;
}
.kb-acc .kb-acc-body.toggle-hidden {
	display: none;
}

/* Formular-Overlays des Kundenbereichs (XD Vermieter 12 und 14A): Titelzeile mit Icon,
   Panels mit schwarzer Ueberschrift statt der hellblauen Grossbuchstaben-Titel, Fussleiste
   rechts. Gilt nur im Overlay-Scope, die uebrigen Modals des Portals bleiben unveraendert. */
.kb-formoverlay h1.Title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0 0 22px 0;
	font-family: var(--rd-font);
	font-size: 20px;
	font-weight: 800;
	line-height: 1.3;
	color: var(--rd-blue);
	text-transform: none;
}
.kb-formoverlay h1.Title .ico {
	width: 34px;
	height: 34px;
	flex: 0 0 auto;
	border-radius: 50%;
	background: #E4F6FD url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Crect x='2' y='7' width='15' height='8' rx='1'/%3E%3Ccircle cx='8' cy='18' r='2'/%3E%3Cpath d='M17 15h5'/%3E%3C/svg%3E") center / 20px 20px no-repeat;
}
.kb-formoverlay fieldset.kb-panel {
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 18px 22px 6px 22px;
	margin: 0 0 14px 0;
}
.kb-formoverlay fieldset.kb-panel > h2 {
	margin: 0 0 16px 0;
	font-size: 16px;
	line-height: 1.44;
	font-weight: 800;
	color: #000000;
	text-transform: none;
}
.kb-formoverlay fieldset.kb-panel > h3 {
	margin: 10px 0 14px 0;
	font-size: 15px;
	line-height: 1.44;
	font-weight: 800;
	color: #000000;
	text-transform: none;
}
.kb-formoverlay .kb-acc .kb-acc-body {
	border: 0;
	padding: 4px 22px 14px 22px;
	margin: 0;
}
.kb-formoverlay .kb-dfoot {
	margin-top: 22px;
}
.kb-formoverlay .kb-dfoot input.kb-button {
	border-radius: 22px !important;
	font-family: var(--rd-font);
}
/* Services-Teaser: die Karten verweisen auf die Unterseiten (Inhalte liegen dort) */
.kb-servicegrid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}
.kb-servicecard {
	display: block;
	padding: 22px 24px;
	background: #FFFFFF;
	border: 1px solid #D9DEE4;
	border-radius: 12px;
	text-decoration: none;
}
.kb-servicecard:hover {
	background: #F4F9FD;
	border-color: var(--rd-cyan);
	text-decoration: none;
	opacity: 1;
}
.kb-servicecard .st {
	display: block;
	margin-bottom: 5px;
	font-size: 20px;
	font-weight: 800;
	color: var(--rd-text);
}
.kb-servicecard .sx {
	display: block;
	margin-bottom: 14px;
	font-size: 14px;
	line-height: 1.5;
	color: var(--rd-text);
}
.kb-servicecard .sl {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 800;
	color: var(--rd-cyan);
}
.kb-servicecard .sl:after {
	content: '';
	width: 12px;
	height: 12px;
	background: url(../images/redesign2026/icons/chevron-right.svg) center / contain no-repeat;
}

/* Pakete + Schliessmodul (XD Vermieter 22-25) */
.kb-orgstats {
	max-width: 360px;
	padding: 22px 26px;
}
.kb-orgstats .srow {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	padding: 6px 0;
	border-bottom: 1px solid #F0F3F7;
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
}
.kb-orgstats .srow:last-child {
	border-bottom: 0;
}
.kb-orgstats .srow .v {
	font-weight: 900;
}
.kb-currentpackage {
	color: var(--rd-cyan);
	font-weight: 900;
}
.kb-packages {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
}
.kb-package {
	position: relative;
	border: 1px solid #D9DEE4;
	border-radius: 14px;
	padding: 22px 20px;
	font-family: var(--rd-font);
	background: #FFFFFF;
}
.kb-package.current {
	background: #DFF1FB;
	border: 2px solid var(--rd-cyan);
}
.kb-package .chosen {
	position: absolute;
	top: 12px;
	right: 14px;
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 800;
	color: var(--rd-cyan);
}
.kb-package .chosen .check {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--rd-cyan) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3'%3E%3Cpath d='M5 13l4 4 10-10'/%3E%3C/svg%3E") center / 10px 10px no-repeat;
}
.kb-package .pname {
	font-size: 18px;
	font-weight: 900;
	color: var(--rd-blue);
}
.kb-package .pscope {
	font-size: 13px;
	font-weight: 600;
	color: var(--rd-text);
	margin-bottom: 14px;
}
.kb-package .pprice {
	font-size: 34px;
	font-weight: 900;
	color: var(--rd-blue);
	line-height: 1.1;
}
/* Paket XL: "auf Anfrage" statt Betrag - kleinere Stufe, damit die Karte gleich hoch bleibt */
.kb-package .pprice.request {
	font-size: 22px;
}
.kb-package .unit {
	font-size: 14px;
	font-weight: 800;
}
.kb-packnote {
	font-size: 12px;
	font-weight: 500;
	color: #666666;
	line-height: 1.6;
}
.kb-lockmodule {
	display: flex;
	align-items: center;
	gap: 30px;
}
.kb-lockmodule .ltext {
	flex: 1 1 auto;
	font-size: 14px;
	font-weight: 500;
	color: var(--rd-text);
	line-height: 1.6;
}
.kb-lockmodule .lprice {
	flex: 0 0 auto;
	font-size: 34px;
	font-weight: 900;
	color: var(--rd-blue);
}
.kb-lockmodule .lprice .unit {
	font-size: 14px;
	font-weight: 800;
}

/* Terminkalender (XD Vermieter 04-06): Segment-Umschalter, Filterpanel, Kalender-Reskin */
.kb-segment {
	display: inline-flex;
	background: #EDF3F8;
	border-radius: 20px;
	padding: 4px;
}
.kb-segment .seg {
	padding: 7px 22px;
	border-radius: 16px;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 600;
	color: var(--rd-text);
	text-decoration: none;
}
.kb-segment .seg.active {
	background: var(--rd-blue);
	color: #FFFFFF;
	font-weight: 800;
}
.kb-filterpanel {
	border: 1px solid #D9DEE4;
	border-radius: 12px;
	padding: 6px 18px;
	margin-top: 14px;
}
.kb-filterpanel.toggle-hidden {
	display: none;
}
.kb-filterpanel aside#sidebar {
	float: none;
	width: 100% !important;
	background: none;
	padding: 10px 0;
	box-sizing: border-box;
}
.kb-filterpanel aside#sidebar .CheckboxList {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 22px;
}
.kb-filterpanel aside#sidebar form#CALENDAR, .kb-filterpanel aside#sidebar form#CALENDAR + .Space40 {
	display: none;
} /* Ansicht-Umschalter sitzt in der Toolbar */
.kb-filterpanel aside#sidebar h3.Title {
	color: #000;
	font-size: 18px;
	font-weight: 800;
	margin: 0;
}
.kb-filterpanel aside#sidebar h3.Title + .Space20 {
	height: 10px;
}
.kb-filterpanel aside#sidebar label {
	color: #000;
}
.kb-filterpanel aside#sidebar summary {
	color: #000;
	font-weight: 800;
	cursor: pointer;
	padding: 4px 0;
}
.kb-filterpanel aside#sidebar details {
	margin: 0 0 4px 0;
}
.kb-filterpanel aside#sidebar .Space40 {
	height: 16px;
}
.kb-filterpanel aside#sidebar .flex-row {
	display: flex;
	gap: 10px;
	max-width: 560px;
}
.kb-filterpanel aside#sidebar .Field.Search {
	flex: 1 1 auto;
} /* Feld-Optik = Standard */
.kb-filterpanel aside#sidebar .Button.Search {
	border-radius: 22px !important;
	background: var(--rd-blue);
	border: 1px solid var(--rd-blue);
	color: #FFFFFF;
	font-weight: 800;
	font-size: 14px;
	padding: 8px 22px;
	cursor: pointer;
	text-indent: 0;
	width: auto;
	height: auto;
	line-height: normal;
}
.kb-filterpanel aside#sidebar .Button.Search:hover {
	background: var(--rd-cyan);
	border-color: var(--rd-cyan);
}
/*.kb-calcard {
	max-width: 1400px;
}*/
.kb-calcard .calendar-container .header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 14px;
}
.kb-calcard .calendar-container .header .left, .kb-calcard .calendar-container .header .right {
	display: flex;
	align-items: center;
	gap: 8px;
}
.kb-calcard .calendar-container .header .center {
	flex: 1 1 auto;
	text-align: center;
}
.kb-calcard .calendar-container .header h4 {
	margin: 0;
	font-family: var(--rd-font);
	font-size: 17px;
	font-weight: 800;
	color: var(--rd-text);
}
.kb-calcard .calendar-container .header .btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 1px solid #D9DEE4;
	border-radius: 16px;
	padding: 6px 14px;
	font-family: var(--rd-font);
	font-size: 13px;
	font-weight: 600;
	color: var(--rd-blue);
	text-decoration: none;
	background: #FFFFFF;
}
.kb-calcard .calendar-container .header .btn:hover {
	background: #EDF3F8;
}
.kb-calcard .kb-appt {
	display: block;
	border-left: 4px solid #D9DEE4;
	background: #F4F7FA;
	border-radius: 6px;
	padding: 4px 8px;
	margin: 2px 0;
	font-family: var(--rd-font);
	font-size: 11px;
	line-height: 1.44;
	color: var(--rd-text);
	overflow: hidden;
}
.kb-calcard .kb-appt a {
	color: var(--rd-text);
	text-decoration: none;
}
.kb-calcard .kb-appt.type-booked {
	background: #DEE9F7;
	border-left-color: #2568C3;
}
.kb-calcard .kb-appt.type-paid {
	background: #E4F6FD;
	border-left-color: #50C6F4;
}
.kb-calcard .kb-appt.type-freeofcharge {
	background: #F6FCD3;
	border-left-color: #D4F716;
}
.kb-calcard .kb-appt.type-service {
	background: #FDF0DC;
	border-left-color: #F0AE30;
}
.kb-calcard .kb-appt.type-defect {
	background: #FBE4EA;
	border-left-color: #E25077;
}
.kb-calcard .kb-appt.type-internal {
	background: #DDEDEC;
	border-left-color: #288481;
}

/* --- XD-Update 2026-08 (U1): zentrale Bausteine Zeilen-Tabellen, Kebab-Menue, Paging, gefuellte Badges --- */

/* Gefuellte Status-Badges (XD-Update: Pillen mit Farbflaeche, weisse Schrift).
   Buchungsart-Farben = Bestand (User-Entscheidung 05.08); state-* fuer Mieter-Zustaende,
   trailer-* fuer den Anhaengerstatus in der Flotte (Frei/Inaktiv/Wartung/Defekt). */
.kb-badge.fill {
	border-color: transparent;
	color: #FFFFFF;
	font-weight: 00;
}
.kb-badge.fill.type-booked {
	background: #2568C3;
}
.kb-badge.fill.type-paid {
	background: #50C6F4;
}
.kb-badge.fill.type-freeofcharge {
	background: #D4F716;
	color: #1A1A1A;
}
.kb-badge.fill.type-service {
	background: #F0AE30;
}
.kb-badge.fill.type-defect {
	background: #E25077;
}
.kb-badge.fill.type-internal {
	background: #288481;
}
.kb-badge.fill.state-started {
	background: #4CBB57;
}
.kb-badge.fill.state-open {
	background: #F19A38;
}
.kb-badge.fill.state-completed {
	background: #29ABE2;
}
/* Anhaengerstatus-Farben nach XD Vermieter Seite 1 (Farblegende, Werte dort abgegriffen) */
.kb-badge.fill.trailer-free {
	background: #75D179;
}
.kb-badge.fill.trailer-inactive {
	background: #DBDBDB;
	color: #1A1A1A;
}
.kb-badge.fill.trailer-maintenance {
	background: #F0AE30;
}
.kb-badge.fill.trailer-defect {
	background: #E25077;
}
/* Fuehrerscheinpruefung in den Mieter-Informationen (Vermieterbereich): Farben aus der
   Farblegende XD Vermieter Seite 1 - gueltig = Gruen wie "Frei", abgelaufen = Grau wie "Inaktiv" */
.kb-badge.fill.licence-valid,
.kb-badge.fill.account-valid {
	background: #75D179;
}
.kb-badge.fill.licence-expired,
.kb-badge.fill.account-missing {
	background: #DBDBDB;
	color: #1A1A1A;
}

/* Zeilen-Tabelle: Kopfzeile auf Blau, Zeilen als weisse Karten (XD Vermieter 02/09/10/13).
   Spaltenraster je Ansicht per --kb-rt-cols am .kb-rt-Container setzen. */
.kb-rt {
	--kb-rt-cols: repeat(5, 1fr);
}
.kb-rt-head {
	display: grid;
	grid-template-columns: var(--kb-rt-cols);
	gap: 18px;
	align-items: center;
	padding: 0 24px 12px 24px;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: #FFFFFF;
}
.kb-rt-head a {
	color: #FFFFFF;
	text-decoration: none;
}
.kb-rt-head a:hover {
	text-decoration: underline;
}
.kb-rt-row {
	position: relative;
	display: grid;
	grid-template-columns: var(--kb-rt-cols);
	gap: 15px;
	align-items: center;
	background: #FFFFFF;
	border-radius: 14px;
	padding: 16px 24px;
	margin: 0 0 14px 0;
	font-family: var(--rd-font);
	font-size: 14px;
	color: #000000;
	box-sizing: border-box;
}
a.kb-rt-row {
	text-decoration: none;
}
.kb-rt-row:hover, .kb-rt-row.selected {
	background: #DCF0FA;
}
.kb-rt-row .kb-rowactions {
	position: absolute;
	top: 50%;
	right: 56px;
	transform: translateY(-50%);
	display: none;
	gap: 10px;
	z-index: 5;
}
.kb-rt-row:hover .kb-rowactions {
	display: inline-flex;
}

/* Runde Icon-Buttons (Bearbeiten/Loeschen im Zeilen-Hover) */
.kb-iconbtn {
	display: inline-flex;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	background-color: var(--rd-blue);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	cursor: pointer;
}
.kb-iconbtn:hover {
	background-color: var(--rd-cyan);
}
.kb-iconbtn.edit {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2'%3E%3Cpath d='M17 3l4 4L8 20l-5 1 1-5L17 3z'/%3E%3C/svg%3E");
}
.kb-iconbtn.delete {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2'%3E%3Cpath d='M4 7h16M10 7V5h4v2m-7 0l1 13h8l1-13'/%3E%3C/svg%3E");
}

/* --- XD-Abgleich Vermieter 2026-08-17: Sortierpfeile an jeder Spalte, Zeilen-Hover,
   Icons in den Kebab-Menues --- */

/* Chevron an JEDER Spaltenueberschrift (XD 09/13), aktive Spalte voll deckend */
.kb-rt-head span {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	max-width: 100%;
}
.kb-rt-head .ListSort {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.kb-rt-head .ListSort::after {
	content: '';
	width: 12px;
	height: 12px;
	flex: 0 0 auto;
	opacity: 0.55;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.kb-rt-head A.ListSort.Asc,
.kb-rt-head A.ListSort.Desc {
	background: none;
	padding: 0;
}
.kb-rt-head .ListSort.Asc::after {
	opacity: 1;
	transform: rotate(180deg);
}
.kb-rt-head .ListSort.Desc::after {
	opacity: 1;
}

/* Zeilen-Hover wie im XD (hellblaue Flaeche) */
.kb-rt .kb-rt-row:hover,
a.kb-rt-row:hover {
	background: #E4F6FD;
}

/* Kebab-Eintraege mit Icon (Stift/Papierkorb) */
.kb-kebab .kb-menu a {
	display: flex;
	align-items: center;
	gap: 10px;
}
.kb-kebab .kb-menu a .ico {
	width: 16px;
	height: 16px;
	flex: 0 0 auto;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.kb-kebab .kb-menu a .ico.edit {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='2'%3E%3Cpath d='M17 3l4 4L8 20l-5 1 1-5L17 3z'/%3E%3C/svg%3E");
}
.kb-kebab .kb-menu a .ico.delete {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='2'%3E%3Cpath d='M4 7h16M10 7V5h4v2m-7 0l1 13h8l1-13'/%3E%3C/svg%3E");
}
.kb-kebab .kb-menu a .ico.detail {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4.5-4.5'/%3E%3C/svg%3E");
}
/* Export-Button mit Download-Icon (XD Vermieter 03/06/07) */
#KbExportOpen::before {
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 8px;
	vertical-align: -3px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12M7 11l5 5 5-5M4 20h16'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* Kebab-Menue (drei Punkte + Aktions-Popup); open-Klasse togglet die Sichtbarkeit */
.kb-kebab {
	position: relative;
	display: inline-flex;
	justify-self: end;
}
.kb-kebab > button {
	width: 34px;
	height: 34px;
	border: 0;
	background: transparent;
	color: var(--rd-text);
	font-size: 20px;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	padding: 0;
}
.kb-kebab > button::before {
	content: '\22EE';
}
.kb-kebab .kb-menu {
	display: none;
	position: absolute;
	top: -6px;
	right: 40px;
	z-index: 30;
	background: #FFFFFF;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
	padding: 6px;
	min-width: 160px;
}
.kb-kebab.open .kb-menu {
	display: block;
}
.kb-menu a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	border-radius: 8px;
	color: #000000;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}
.kb-menu a:hover {
	background: #EFEFEF;
}

/* "+ Neu anlegen"-Zeile unter Listen (transparent, weisse Kontur) */
.kb-addrow {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	border: 1px solid #FFFFFF;
	border-radius: 14px;
	background: transparent;
	padding: 16px 24px;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: #FFFFFF;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}
.kb-addrow:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #FFFFFF;
}
.kb-addrow::before {
	content: '';
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='3'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center / 14px 14px no-repeat;
}

/* Fusszeile der Listen: "1-9 von 20 Eintraegen" + Eintraege pro Seite */
.kb-pagebar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	/*max-width: 1160px;*/
	gap: 20px;
	border-top: 1px solid rgba(255, 255, 255, 1);
	margin-top: 20px;
	padding-top: 10px;
	font-size: 14px;
	color: #FFFFFF;
}
.kb-pagebar b {
	font-weight: 400;
	color: #FFFFFF;
}
.kb-pagebar .kb-perpage {
	display: flex;
	align-items: center;
	gap: 10px;
}
.kb-pagebar .kb-perpage select {
	border: 1px solid #FFFFFF;
	border-radius: 16px;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") 85% center / contain no-repeat;
	background-size: 12px 12px;
	color: #FFFFFF;
	padding: 4px 16px 4px 12px;
	font-size: 13px;
}
.kb-pagebar .kb-perpage select:hover,
.kb-pagebar .kb-perpage select:focus {
	outline: 1px solid #FFFFFF;
	outline-offset: -1px;
}
.kb-pagebar .kb-perpage select option {
	color: #000000;
}

/* Dreiteilung der Fussleiste (tiles/actions/dashboard.paging.php): links Trefferzahl,
   mittig Seitenwahl, rechts Anzahl pro Seite */
/* Zuruecksetzen-Link der Listensuche in der Toolbar */
.kb-searchreset {
	font-family: var(--rd-font);
	font-size: 13px;
	font-weight: 500;
	color: var(--rd-text);
	text-decoration: underline;
	white-space: nowrap;
}
.kb-pagebar .kb-pagecount {
	flex: 1 1 0;
}
.kb-pagebar .kb-pagepick {
	flex: 0 0 auto;
	display: flex;
	justify-content: center;
}
.kb-pagebar .kb-perpage {
	flex: 1 1 0;
	justify-content: flex-end;
}

/* Seitenwahl im Look der Standorte-Ergebnisliste (.Paging), Farben auf den blauen
   Untergrund des Kundenbereichs gedreht: weisse Kreise, aktive Seite in Cyan */
.kb-pagebar .Paging {
	margin: 0;
	padding: 0;
	border-top: 0;
	gap: 8px;
}
/* --- XD-Update 2026-08 (U2): Mieter Dashboard / Buchungs-Kacheln / Detail-Panels --- */

/* Download-Link (Rechnung) mit Pfeil-Icon */
.kb-doclink {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: #000000;
	text-decoration: underline;
}
.kb-doclink::after {
	content: '';
	width: 15px;
	height: 15px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2'%3E%3Cpath d='M12 3v12m0 0l-5-5m5 5l5-5M4 21h16'/%3E%3C/svg%3E") center / contain no-repeat;
}
.kb-doclink:hover {
	color: var(--rd-blue);
}

/* Gruener Mietvorgang-starten-Button in der Zustands-Steuerung */
.kb-rescontrols input#ButtonStart,
.kb-rescontrols input#ButtonFinish {
	background-repeat: no-repeat;
	background-position: 20px center;
	background-size: 20px auto;
	padding-left: 45px;
	float: none;
	margin: 0 0 0 auto;
}

.kb-rescontrols input#ButtonStart {
	background-color: #4CBB57;
	border-color: #4CBB57;
	background-image: url(../images/redesign2026/icons/start.svg);
}
.kb-rescontrols input#ButtonStart:hover {
	background-color: #3EA249;
	border-color: #3EA249;
}

/* Anhaenger-Icon im hellblauen Kreis (Tabellenzeilen + Kacheln) */
.kb-tricon {
	display: inline-flex;
	flex: 0 0 auto;
	width: 62px;
	height: 62px;
	border-radius: 50%;
	background: #D9EFFB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='1.6'%3E%3Crect x='2' y='6' width='15' height='9' rx='1'/%3E%3Cpath d='M17 12h5M19 15.5a1.8 1.8 0 1 0 0.001 0zM7 15.5a1.8 1.8 0 1 0 0.001 0z'/%3E%3C/svg%3E") center / 50px 50px no-repeat;
}

.kb-card.completed .kb-tricon {
	width: 54px;
	height: 54px;
	background-size: 40px 40px;
}

/* Zeilen-Tabelle innerhalb weisser Karten (Letzte Buchungen, Dashboard) */
.kb-rt.in-card .kb-rt-head {
	color: #000000;
}
.kb-rt.in-card .kb-rt-head a {
	color: #000000;
}
.kb-rt.in-card .kb-rt-row {
	border: 1px solid #E3E3E3;
	margin-bottom: 12px;
}
.kb-rt.in-card .kb-rt-row:hover {
	background: #EAF6FD;
}
.kb-rt-last {
	--kb-rt-cols: 1.4fr 1.2fr 1.2fr 1.4fr 0.8fr;
}
.kb-rt-last .cell {
	font-size: 14px;
	color: #000000;
}
.kb-rt-last .cell.id {
	display: flex;
	align-items: center;
	gap: 12px;
}
.kb-rt-last .idwrap b {
	display: block;
	margin-bottom: 6px;
}
.kb-lastfoot {
	display: flex;
	justify-content: flex-end;
	margin-top: 6px;
}

/* Buchungs-Kacheln (XD-Update Screen 02): 3 Spalten, Status-Farbband, klickbar */
.kb-tiles {
	grid-template-columns: repeat(3, 1fr);
}
.kb-tile {
	cursor: pointer;
	border-left: 7px solid transparent;
}
.kb-tile:hover {
	background: #EAF6FD;
}
.kb-tile.state-started {
	border-left-color: #4CBB57;
}
.kb-tile.state-open {
	border-left-color: #F19A38;
}
.kb-tile.state-completed {
	border-left-color: #29ABE2;
}
.kb-tile.trailer-inactive {
	border-left-color: #C9C9C9;
}
.kb-tile .tile-head {
	display: block;
	font-size: 16px;
	font-weight: 800;
	color: #000000;
	margin-bottom: 0;
}
.kb-tile .tile-status {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 5px 0 15px 0;
}
.kb-tile .tile-status .line {
	flex: 1 1 auto;
	height: 1px;
	background: #DADADA;
}
.kb-tile .tile-model {
	align-items: flex-start;
}
.kb-tile .tile-model .mwrap .model {
	font-size: 16px;
	font-weight: 800;
	color: #000000;
	margin-bottom: 5px;
}
.kb-tile .tile-doc {
	margin-top: 12px;
}

/* Detail-Panels (XD-Update Screen 03): Abschnittstitel links, Inhalt rechts, X-Schliessen */
.kb-close {
	display: inline-flex;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2'%3E%3Cpath d='M5 5l14 14M19 5L5 19'/%3E%3C/svg%3E") center / 30px 30px no-repeat;
	margin: -15px -20px 0 0;
}
.kb-close:hover {
	opacity: 0.6;
}
.kb-dpanel {
	display: grid;
	grid-template-columns: 170px 1fr;
	gap: 18px;
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 20px 24px;
	margin-bottom: 16px;
}
.kb-dpanel h3 {
	margin: 0;
	padding: 0;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	color: var(--rd-blue);
	text-transform: none;
}
.kb-dpanel .dcontent.cols2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}
.kb-dpanel .dcontent.docs {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 12px;
}
.kb-dpanel .cap {
	font-size: 14px;
	font-weight: 800;
	color: #000000;
	margin-bottom: 5px;
}
.kb-dpanel .val {
	font-size: 14px;
	color: #000000;
}
.kb-dpanel .val a {
	font-size: 14px;
}
.kb-card .kb-dpanel .kb-costrows *  {
	font-size: 14px;
}
.kb-openings .orow {
	font-size: 14px;
	margin-bottom: 2px;
}
.kb-fieldgrid.cols4 {
	grid-template-columns: repeat(4, 1fr);
}
.kb-dfoot {
	display: flex;
	justify-content: flex-end;
	gap: 15px;
	margin-top: 4px;
}
/* --- XD-Update 2026-08 (U3): Vermieter-Buchungsliste + Export-Modal --- */

.kb-rt-bookings {
	--kb-rt-cols: 1.35fr 1.25fr 1.25fr 1.35fr 1fr 44px;
}
.kb-rt-bookings .cell {
	font-size: 14px;
	color: #000000;
}
.kb-rt-bookings .cell.id {
	display: flex;
	align-items: center;
	gap: 12px;
}
.kb-rt-bookings .cell .sub {
	color: #555555;
	font-size: inherit;
	line-height: inherit;
}
.kb-rt-bookings .cell.kebab {
	justify-self: end;
}
.kb-rt-row[data-href] {
	cursor: pointer;
}
.kb-rowedit {
	cursor: pointer;
}

/* Modal-Overlay (Export) */
.kb-modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 900;
	background: rgba(0, 0, 0, 0.45);
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.kb-modal.open {
	display: flex;
}
.kb-modal-card {
	background: #FFFFFF;
	border-radius: 18px;
	padding: 26px 30px;
	width: 560px;
	max-width: 100%;
	max-height: 90vh;
	overflow: auto;
	box-shadow: 0 18px 48px rgba(0, 0, 0, 0.3);
}
.kb-modal-head {
	display: flex;
	align-items: center;
	margin-bottom: 18px;
}
.kb-modal-head h4 {
	flex: 1 1 auto;
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: 20px;
	font-weight: 800;
	color: var(--rd-blue);
}
.kb-modal-head .kb-close {
	cursor: pointer;
}
.kb-mset {
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 18px 22px;
	margin-bottom: 14px;
}
.kb-mset .mtitle {
	font-size: 16px;
	font-weight: 800;
	color: #000000;
	margin-bottom: 10px;
}
.kb-mset .mrow {
	display: flex;
	gap: 20px;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
.kb-mset .mrow .floating-label {
	width: 247px;
}
.kb-mset .mrow .floating-label .Select {
	width: 100%;
}
.kb-mset .mrow .kb-radio {
	display: inline-flex;
	align-items: center;
}
.kb-mset .mrow .kb-radio label {
	font-size: 16px;
	color: #000000;
}
.kb-checklabel {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #000000;
}
.kb-modal-foot {
	display: flex;
	justify-content: center;
	gap: 14px;
	margin-top: 20px;
}
.kb-pagenav {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}
.kb-pagenav a {
	color: #FFFFFF;
	font-weight: 800;
	text-decoration: none;
	border: 1px solid #FFFFFF;
	border-radius: 50%;
	width: 26px;
	height: 26px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.kb-pagenav a:hover {
	background: rgba(255, 255, 255, 0.15);
	color: #FFFFFF;
}
/* --- XD-Update 2026-08 (U5): Terminkalender (Segment im Card, Monatsraster, Tagesansicht) --- */

.kb-calbar {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 14px;
}

/* Monatsraster: 7-Spalten-Grid, Tagesnummer oben rechts, Hover-Aktion */
.kb-calweekdays {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	margin-top: 14px;
}
.kb-calweekdays span {
	padding: 10px 12px;
	border: 1px solid #E6E6E6;
	border-bottom: 0;
	margin-right: -1px;
	background: #FFFFFF;
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 800;
	color: #000000;
}
.kb-calcard .kb-grid .calendar .calendar-row {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
}
.kb-calcard .kb-grid .calendar .day {
	position: relative;
	min-height: 98px;
	border: 1px solid #E6E6E6;
	margin: 0 -1px -1px 0;
	padding: 30px 10px 10px 10px;
	background: #FFFFFF;
	box-sizing: border-box;
	min-width: 0;
}
.kb-calcard .kb-grid .calendar .day:hover {
	box-shadow: none;
	text-decoration: none;
}
.kb-calcard .kb-grid .calendar .day.previous-month,
.kb-calcard .kb-grid .calendar .day.next-month {
	background: #FAFAFA;
}
.kb-calcard .kb-grid .calendar .day .highlight {
	position: absolute;
	top: 8px;
	right: 10px;
	font-size: 13px;
	font-weight: 600;
	color: #9B9B9B;
}
.kb-calcard .kb-grid .calendar .day.today .highlight {
	color: var(--rd-blue);
	font-weight: 800;
}
.kb-calcard .kb-grid .calendar .day .action.add {
	display: none;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 20;
	background: #FFFFFF;
	border-radius: 10px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
	padding: 8px 14px;
	font-family: var(--rd-font);
	font-size: 13px;
	font-weight: 800;
	color: var(--rd-blue);
	text-decoration: none;
	white-space: nowrap;
}
.kb-calcard .kb-grid .calendar .day:hover .action.add {
	display: inline-block;
}

/* Legacy-calendar.css neutralisieren: kein Scroll-Container, keine Trennlinien/Kursive */
.kb-calcard .kb-grid .calendar .day .item-container {
	overflow: visible;
	max-height: none;
	padding: 0;
	height: 120px !important;
}
.kb-calcard .weekly.kb-grid .calendar .day .item-container {
	height: 250px !important;
}
.kb-calcard .kb-grid .calendar .day .item-container .item {
	font-style: normal;
	margin-bottom: 5px;
	display: block;
}

.kb-calcard .kb-grid .calendar .day .item-container .item a {
	text-decoration: none;
}

.kb-calcard .kb-grid .calendar .day .item-container .item + .item {
	border-top: 0;
	padding-top: 0;
}
.kb-calcard .kb-grid .calendar .day .action.add {
	text-indent: 0;
	width: auto;
	height: auto;
	border: 0;
	text-align: center;
	min-width: 100px;
	color: var(--rd-text);
}
.kb-calcard .kb-grid .calendar .day .action.add::before {
	content: none;
}
/* Buchungs-Balken im Monatsraster (Segment je Tag, Label am Start) */
.kb-calcard .kb-grid .item {
	margin-bottom: 4px;
}
.kb-bar {
	display: block;
	text-decoration: none;
	min-width: 0;
}
.kb-bar .bar {
	display: block;
	height: 6px;
	border-radius: 3px;
	background: #9B9B9B;
}
.kb-bar.pos-start .bar {
	border-radius: 3px 0 0 3px;
	margin-right: -11px;
}
.kb-bar.pos-mid .bar {
	border-radius: 0;
	margin-left: -11px;
	margin-right: -11px;
}
.kb-bar.pos-end .bar {
	border-radius: 0 3px 3px 0;
	margin-left: -11px;
}
.kb-bar .code {
	display: block;
	margin-top: 3px;
	font-family: var(--rd-font);
	font-size: 12px;
	font-weight: 600;
	color: #000000;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.kb-bar.type-booked .bar { background: #2568C3; }
.kb-bar.type-booked .code { color: #1B4E92; }
.kb-bar.type-paid .bar { background: #50C6F4; }
.kb-bar.type-paid .code { color: #2FA6D6; }
.kb-bar.type-freeofcharge .bar { background: #D4F716; }
.kb-bar.type-freeofcharge .code { color: #8FA800; }
.kb-bar.type-service .bar { background: #F0AE30; }
.kb-bar.type-service .code { color: #C98B22; }
.kb-bar.type-defect .bar { background: #E25077; }
.kb-bar.type-defect .code { color: #C13A5D; }
.kb-bar.type-internal .bar { background: #288481; }
.kb-bar.type-internal .code { color: #1D625F; }
/* Terminkalender, Ansicht Anhaenger (Gantt): Redesign-Look wie das Monatsraster - weisse
   Flaeche, helle Rasterlinien, Balken in der Farbe der Buchungsart mit Kennzeichen.
   Ueberschreibt die Blau-auf-Blau-Optik aus der Legacy-calendar.css. */
.kb-calcard .trailers .CalHeaderRow,
.kb-calcard .trailers .CalRow {
	background: #FFFFFF;
	border-top: 0;
	border-bottom: 1px solid #E6E6E6;
}
.kb-calcard .trailers .CalHeaderRow {
	margin: 0;
}
.kb-calcard .trailers .CalHeader,
.kb-calcard .trailers .CalCell {
	background: #FFFFFF;
	color: #000000;
	font-family: var(--rd-font);
	font-size: 13px;
	font-weight: 600;
	padding: 8px 4px;
}
.kb-calcard .trailers .CalHeaderRow .CalHeader,
.kb-calcard .trailers .CalHeaderRow .CalCell {
	padding: 10px 4px;
	font-weight: 800;
}
.kb-calcard .trailers .CalHeader.weekend {
	background: #FAFAFA;
	color: #9B9B9B;
}
.kb-calcard .trailers .CalHeader.today {
	background: #E4F6FD;
	color: var(--rd-blue);
	font-weight: 800;
}
.kb-calcard .trailers .CalHeader + .CalHeader {
	border-left: 1px solid #F0F0F2;
}
.kb-calcard .trailers .CalCell.Trailer {
	width: 210px;
	min-height: 52px;
	flex: 0 0 210px;
	justify-content: flex-start;
	padding: 10px 14px;
	font-weight: 800;
	line-height: 1.35;
	border-right: 1px solid #E6E6E6;
}
.kb-calcard .trailers .CalRowData {
	min-height: 52px;
	padding: 0;
	border-left: 0;
}
.kb-calcard .trailers .CalDetail {
	margin: 3px 2px;
	border-radius: 4px;
	background: #9B9B9B;
	overflow: hidden;
}
.kb-calcard .trailers .CalDetail a {
	display: flex;
	align-items: center;
	padding: 0 5px;
	text-decoration: none;
	box-sizing: border-box;
}
.kb-calcard .trailers .CalDetail a:hover {
	background: transparent;
	opacity: 0.85;
}
.kb-calcard .trailers .CalDetail .code {
	font-family: var(--rd-font);
	font-size: 11px;
	font-weight: 800;
	color: #FFFFFF;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.kb-calcard .trailers .CalDetail.type-booked { background: #2568C3; }
.kb-calcard .trailers .CalDetail.type-paid { background: #50C6F4; }
.kb-calcard .trailers .CalDetail.type-freeofcharge { background: #D4F716; }
.kb-calcard .trailers .CalDetail.type-freeofcharge .code { color: #4F5C00; }
.kb-calcard .trailers .CalDetail.type-service { background: #F0AE30; }
.kb-calcard .trailers .CalDetail.type-defect { background: #E25077; }
.kb-calcard .trailers .CalDetail.type-internal { background: #288481; }
/* Die Plus-Chips der Kopfzeile erscheinen wie im Monatsraster erst beim Ueberfahren */
.kb-calcard .trailers .CalHeader .action.add {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 20;
	width: auto;
	height: auto;
	border: 0;
	border-radius: 10px;
	padding: 6px 10px;
	background: #FFFFFF;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
	font-family: var(--rd-font);
	font-size: 12px;
	font-weight: 800;
	color: var(--rd-blue);
	text-indent: 0;
	text-decoration: none;
	white-space: nowrap;
}
.kb-calcard .trailers .CalHeader .action.add::before {
	content: none;
}
.kb-calcard .trailers .CalHeader:hover .action.add {
	display: inline-block;
	min-width: 80px;
}

/* Wochentagszeile mittig wie im Layout */
.kb-calweekdays span {
	text-align: center;
}
.kb-more {
	display: block;
	margin-top: 2px;
	font-family: var(--rd-font);
	font-size: 12px;
	font-style: italic;
	color: #8A8A8A;
}

/* Tagesansicht: Stundenraster mit vollfarbigen Buchungszeilen (XD Screen 07) */
.kb-hourgrid {
	margin-top: 4px;
}
.kb-hourslot {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: 16px;
	align-items: start;
	border-top: 1px solid #E6E6E6;
	padding: 8px 0;
	min-height: 46px;
	box-sizing: border-box;
}
.kb-hourslot:first-child {
	border-top: 0;
}
.kb-hourslot .h {
	padding-top: 8px;
	font-family: var(--rd-font);
	font-size: 13px;
	color: #8A8A8A;
}
.kb-hourrow {
	display: grid;
	/* letzte Spalte: Kebab mit den Aktionen (XD Vermieter 07) */
	grid-template-columns: 46px 100px 1.3fr 1.3fr 110px 1.6fr 34px;
	gap: 16px;
	align-items: center;
	border-radius: 12px;
	padding: 10px 18px;
	margin-bottom: 8px;
	font-family: var(--rd-font);
	font-size: 13px;
	color: #000000;
	text-decoration: none;
}
.kb-hourrow .ticon {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='1.6'%3E%3Crect x='2' y='6' width='15' height='9' rx='1'/%3E%3Cpath d='M17 12h5M19 15.5a1.8 1.8 0 1 0 0.001 0zM7 15.5a1.8 1.8 0 1 0 0.001 0z'/%3E%3C/svg%3E") center / 32px 32px no-repeat;
}
.kb-hourrow .t {
	font-weight: 800;
}
.kb-hourrow .what {
	font-weight: 800;
}
.kb-hourrow .kb-badge {
	background: #FFFFFF;
	justify-self: start;
}
/* Tagesansicht: Zeilen vollflaechig in der Buchungsart-Farbe (XD Vermieter 07) */
.kb-hourrow { cursor: pointer; }
.kb-hourrow .kb-kebab { justify-self: end; }
.kb-hourrow .ticon { background-color: rgba(255, 255, 255, 0.75); }
.kb-hourrow.type-booked { background: #2568C3; color: #FFFFFF; }
.kb-hourrow.type-paid { background: #50C6F4; }
.kb-hourrow.type-freeofcharge { background: #D4F716; }
.kb-hourrow.type-service { background: #F0AE30; }
.kb-hourrow.type-defect { background: #E25077; color: #FFFFFF; }
.kb-hourrow.type-internal { background: #288481; color: #FFFFFF; }
.kb-hourrow.type-booked .kb-badge,
.kb-hourrow.type-defect .kb-badge,
.kb-hourrow.type-internal .kb-badge {
	background: transparent;
	color: #FFFFFF;
	border-color: rgba(255, 255, 255, 0.7);
}
.kb-hourrow.type-booked .kb-kebab > button,
.kb-hourrow.type-defect .kb-kebab > button,
.kb-hourrow.type-internal .kb-kebab > button {
	color: #FFFFFF;
}
/* --- XD-Update 2026-08 (U6): Neue Buchung als Seite (Vermieter Screen 08) --- */

.kb-rescard-head h2.blue {
	color: var(--rd-blue);
}
.kb-formpanel {
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 20px 24px;
	margin-bottom: 16px;
}
.kb-formpanel h3 {
	margin: 0 0 16px 0;
	padding: 0;
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	color: var(--rd-blue);
	text-transform: none;
}
.kb-formrow {
	display: flex;
	gap: 22px;
	flex-wrap: wrap;
}
.kb-formrow.right {
	justify-content: flex-end;
}
.kb-formrow .f {
	flex: 0 1 320px;
	min-width: 220px;
}
.kb-formrow.split {
	justify-content: space-between;
	align-items: flex-start;
}
.kb-formrow .f.radios {
	display: flex;
	gap: 28px;
	flex: 1 1 auto;
	align-items: center;
	padding-top: 22px;
}
.kb-formpanel label {
	display: block;
	margin-bottom: 6px;
	font-family: var(--rd-font);
	font-size: 13px;
	font-weight: 800;
	color: #000000;
}
.kb-formpanel .kb-fieldgrid.form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 22px;
	margin-top: 16px;
}
.kb-formpanel .hidden {
	display: none;
}
.kb-formbox {
	border: 1px solid #DFDFDF;
	border-radius: 12px;
	padding: 16px 22px;
	margin-bottom: 14px;
}
.kb-formbox.row {
	display: flex;
	align-items: center;
	gap: 16px;
}
.kb-formbox .cap, .kb-slotbox .cap {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	color: #000000;
}
.kb-formbox .val {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
}
.freetime2026 .kb-formbox .val {
	font-weight: 600;
}
.kb-formbox .val.blue {
	color: var(--rd-cyan);
}
.kb-formbox .kb-formrow .f {
	flex: 1 1 220px;
}
/* Uebersicht in der Buchungsmaske (Vermieter): Label/Wert-Zeilen wie in den uebrigen Karten */
.kb-bookingoverview .ovrow {
	display: flex;
	align-items: baseline;
	gap: 16px;
	padding: 3px 0;
}
.kb-bookingoverview .ovrow .cap,
.kb-bookingoverview .ovrow .val {
	font-weight: 400;
	white-space: nowrap;
}
.kb-bookingoverview .ovrow .cap {
	flex: 0 0 210px;
}
.freetime2026 .kb-formbox .val .sub {
	display: inline-block;
	margin-top: 2px;
	font-size: 14px;
	font-weight: 500;
	color: #666666;
}
.kb-slotbox {
	border: 1px solid var(--rd-cyan);
	border-radius: 12px;
	padding: 16px 22px;
	margin-bottom: 14px;
}
.kb-slots {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-top: 14px;
}
.kb-slot input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.kb-slot {
	position: relative;
	cursor: pointer;
	margin-bottom: 0;
}
.kb-slot span {
	display: inline-block;
	border: 1px solid #ABABAB;
	border-radius: 8px;
	padding: 5px 10px 3px 10px;
	font-size: 16px;
	font-weight: 600;
	color: #000000;
	background: #FFFFFF;
	min-width: 77px;
	text-align: center;
}
.kb-slot:hover span {
	border-color: var(--rd-blue);
}
.kb-slot input:checked + span {
	border: 1px solid var(--rd-blue);
	font-weight: 800;
	color: var(--rd-blue);
	padding: 5px 10px 3px 10px;
	background-color: #F0F0F2;
}
.kb-slot.booked {
	cursor: default;
}
.kb-slot.booked span {
	color: #C1C1C1;
	border-color: #E0E0E0;
	background: #F5F5F5;
	text-decoration: line-through;
}
/* Fussnote unter den Abholzeiten: erklaert den Stern an Zeiten ausserhalb der Oeffnungszeiten */
.kb-slotnote {
	margin-top: 15px;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #666666;
	text-align: left !important;
	line-height: 1.44 !important;
}
/* Neue Buchung (XD Vermieter 08) und Export-Modal: echte Radiobuttons - runder Rahmen mit
   Punkt statt der Kaestchen-Optik. Bewusst NUR in diesen Bereichen, der eingefrorene
   Formularfeld-Standard (Radio teilt sich die Checkbox-Grafik) bleibt sonst unangetastet. */
.kb-newbooking input[type='radio']:not(:checked) + label::before,
.kb-modal input[type='radio']:not(:checked) + label::before,
.kb-modal input[type='radio']:checked + label::before,
.kb-newbooking input[type='radio']:checked + label::before {
	background: #FFFFFF;
	border: 2px solid #B9C2CC;
	border-radius: 50%;
	box-sizing: border-box;
}
.kb-modal input[type='radio']:hover + label::before,
.kb-newbooking input[type='radio']:hover + label::before {
	background: #FFFFFF;
	border-color: var(--rd-cyan);
}
.kb-modal input[type='radio']:checked + label::before,
.kb-newbooking input[type='radio']:checked + label::before {
	border-color: var(--rd-blue);
	background: #FFFFFF radial-gradient(var(--rd-blue) 0 4.5px, transparent 5px);
}

.kb-modal input[type='checkbox'] + label,
.kb-modal input[type='radio'] + label {
	font-size: 16px;
}
/* Neue Buchung (XD Vermieter 08): Icons vor den Feldbeschriftungen und Box-Titeln - gleiche
   Motive wie in der Buchungsstrecke, hier in der Blauschrift des Kundenbereichs. */
.kb-newbooking label .ico, .kb-newbooking .cap .ico {
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-right: 8px;
	vertical-align: -4px;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Crect x='2' y='7' width='15' height='8' rx='1'/%3E%3Ccircle cx='8' cy='18' r='2'/%3E%3Cpath d='M17 15h5'/%3E%3C/svg%3E");
}
.kb-newbooking label .ico.cal, .kb-newbooking .cap .ico.cal {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.kb-newbooking label .ico.clock, .kb-newbooking .cap .ico.clock {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 3'/%3E%3C/svg%3E");
}
.kb-newbooking label .ico.out, .kb-newbooking .cap .ico.out {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Crect x='2' y='7' width='13' height='8' rx='1'/%3E%3Ccircle cx='8' cy='18' r='2'/%3E%3Cpath d='M17 11h5m0 0-2.5-2.5M22 11l-2.5 2.5'/%3E%3C/svg%3E");
}
.kb-newbooking label .ico.in, .kb-newbooking .cap .ico.in {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23134890' stroke-width='2'%3E%3Crect x='9' y='7' width='13' height='8' rx='1'/%3E%3Ccircle cx='15' cy='18' r='2'/%3E%3Cpath d='M7 11H2m0 0 2.5-2.5M2 11l2.5 2.5'/%3E%3C/svg%3E");
}
/* Mieterauswahl: das Bestands-Filterfeld rechnet nur in Pixeln (getFilterField macht aus
   100% ein width:100px inline) - die Breite steht deshalb im Tile, hier nur die Deckelung */
.kb-newbooking .FieldFilterText input,
.kb-newbooking .FieldFilterList {
	max-width: 100%;
	box-sizing: border-box;
}
/* Mietzeitraum (XD 08): Beschriftung links neben dem Feld statt darueber */
.kb-newbooking .kb-formbox .kb-formrow .f {
	display: flex;
	align-items: center;
	gap: 12px;
}
.kb-newbooking .kb-formbox .kb-formrow .f label {
	flex: 0 0 auto;
	margin-bottom: 0;
	white-space: nowrap;
}
.kb-newbooking .kb-formbox .kb-formrow .f .Field,
.kb-newbooking .kb-formbox .kb-formrow .f .Select {
	flex: 1 1 auto;
	min-width: 0;
}.kb-newbooking input[type="submit"].kb-button {
	border-radius: 22px !important;
}
/* --- XD-Update 2026-08 (U7): Verwaltungstabellen Standorte / Mieter / Gutscheine --- */

.kb-rt .cell {
	font-size: 14px;
	color: #000000;
	min-width: 0;
	overflow-wrap: break-word;
}
.kb-rt .cell.kebab {
	justify-self: end;
}
.kb-rt-locations {
	--kb-rt-cols: 0.9fr 1.1fr 0.9fr 1.5fr 1.3fr 44px;
}
.kb-rt-persons {
	--kb-rt-cols: 0.6fr 1fr 1fr 1fr 1.5fr 1.5fr 44px;
}
.kb-rt-coupons {
	--kb-rt-cols: 1fr 1.3fr 0.9fr 1fr 1.2fr 44px;
}
.kb-rowactions .kb-iconbtn {
	cursor: pointer;
}
/* --- XD-Update 2026-08 (U8): Anhaengerflotte-Karten mit Statusband + manuellem Status --- */

.kb-fleetcard {
	position: relative;
	border-left: 7px solid transparent;
}
.kb-fleetcard.st-type-booked { border-left-color: #2568C3; }
.kb-fleetcard.st-type-paid { border-left-color: #50C6F4; }
.kb-fleetcard.st-type-freeofcharge { border-left-color: #D4F716; }
.kb-fleetcard.st-type-service { border-left-color: #F0AE30; }
.kb-fleetcard.st-type-defect { border-left-color: #E25077; }
.kb-fleetcard.st-type-internal { border-left-color: #288481; }
/* Anhaengerstatus-Streifen nach XD Vermieter Seite 1 */
.kb-fleetcard.st-trailer-free { border-left-color: #75D179; }
.kb-fleetcard.st-trailer-maintenance { border-left-color: #F0AE30; }
.kb-fleetcard.st-trailer-defect { border-left-color: #E25077; }
.kb-fleetcard.st-trailer-inactive { border-left-color: #DBDBDB; }
.kb-fleetcard.st-type-booked { background: #DEE9F7; }
.kb-fleetcard .fc-head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 0;
}
.kb-fleetcard .fc-head .fc-title {
	/* Platz fuer die drei Punkte: der Kartenkopf traegt seit 2026-08-21 den Namen des
	   Anhaengers und der kann zweizeilig werden */
	padding-right: 22px;
}
.kb-fleetcard .fc-head .fc-title .name {
	font-size: 15px;
	font-weight: 800;
	color: #000000;
}
.kb-fleetcard .fc-head .fc-title .sub {
	font-size: 13px;
	color: #555555;
}
.kb-fleetcard .fc-status {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 10px 0 14px 0;
}
.kb-fleetcard .fc-status .line {
	flex: 1 1 auto;
	height: 1px;
	background: #DADADA;
}
.kb-fleetcard .frow {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
	font-size: 13px;
}
.kb-fleetcard .frow .cap {
	font-weight: 800;
	color: #000000;
}
.kb-fleetcard .frow .val {
	text-align: right;
	color: #000000;
	min-width: 0;
	overflow-wrap: break-word;
}
.kb-fleetcard .fc-foot {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 12px;
	position: relative;
	z-index: 2;
}
.kb-fleetcard .fc-foot .kb-doclink.signal::after {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='2'%3E%3Cpath d='M12 21s-7-6.2-7-11a7 7 0 0 1 14 0c0 4.8-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* Aktionen der Flotten-Karte liegen hinter den drei Punkten (kein Icon auf der Karte) */
.kb-fleetcard .fc-kebab {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 2;
}
.kb-fleetadd {
	min-height: 220px;
	cursor: pointer;
}
/* --- XD-Update 2026-08 (U9): Vermieter-Dashboard + Auslastung --- */

.kb-daycard .kb-daylist .dayrow .ticon {
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23193F6A' stroke-width='1.6'%3E%3Crect x='2' y='6' width='15' height='9' rx='1'/%3E%3Cpath d='M17 12h5M19 15.5a1.8 1.8 0 1 0 0.001 0zM7 15.5a1.8 1.8 0 1 0 0.001 0z'/%3E%3C/svg%3E") center / 36px 36px no-repeat;
}
.kb-daycard .kb-daylist {
	text-align: center;
}
.kb-cardfoot {
	display: flex;
	justify-content: center;
	margin-top: 25px;
}
.kb-cardfoot.split {
	justify-content: space-between;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}
.kb-legend {
	display: inline-flex;
	flex-direction: column;
	gap: 4px;
	align-items: flex-start;
}
.kb-legend .litem {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #000000;
	white-space: nowrap;
}
.kb-legend .dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	flex: 0 0 auto;
}
/* --- XD-Update 2026-08 (U10): Services-Karte, Pakete-Auswahl + Bestelluebersicht --- */

.kb-cardtitle {
	margin: 1% 0 2% 0;
	padding: 0;
	font-size: 40px;
	font-weight: 800;
	color: var(--rd-blue);
	text-transform: none;
}
.kb-cardtitle.center {
	text-align: center;
}
/* kleinere Zwischenueberschrift innerhalb einer Karte (z. B. Bestelluebersicht) */
.kb-cardtitle.small {
	margin: 24px 0 12px 0;
	font-size: 22px;
}

/* Paket-Karten als Radio-Auswahl (XD Screen 20) */
.kb-package .pname,
.kb-package .pscope,
.kb-package .pprice {
	display: block;
}
.kb-package {
	position: relative;
	cursor: pointer;
	display: block;
	margin-bottom: 0;
}
.kb-package input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.kb-package .pradio {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 18px;
	height: 18px;
	border: 1px solid #ABABAB;
	border-radius: 50%;
	background: #FFFFFF;
}
.kb-package.current .pradio {
	display: none;
}
.kb-package .chosen {
	display: none;
}
.kb-package.current .chosen {
	display: inline-flex;
}

/* Bereits gebuchte bzw. kleinere Pakete: grau und nicht waehlbar, nur Upgrades bleiben
   buchbar (User-Vorgabe 2026-08-21) */
.kb-package.locked {
	background: #F2F2F2;
	border-color: #DBDBDB;
	cursor: default;
}
.kb-package.locked .pname,
.kb-package.locked .pscope,
.kb-package.locked .pprice,
.kb-package.locked .unit {
	color: #9A9A9A;
}
.kb-package.locked .pradio {
	border-color: #DBDBDB;
	background: #F2F2F2;
}
.kb-stepperwrap {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}
.kb-stepperwrap .cap {
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 600;
	color: #000000;
}
.kb-stepper {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid #ABABAB;
	border-radius: 8px;
	overflow: hidden;
}
.kb-stepper button {
	width: 40px;
	border: 0;
	background: #FFFFFF;
	font-size: 18px;
	font-weight: 800;
	color: #000000;
	cursor: pointer;
}
.kb-stepper button:hover {
	background: #EFEFEF;
}
.kb-stepper .num {
	min-width: 54px;
	padding: 8px 0;
	text-align: center;
	border-left: 1px solid #ABABAB;
	border-right: 1px solid #ABABAB;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 800;
}
.kb-formbox.split {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	flex-wrap: wrap;
}
.kb-costrows .unit {
	font-weight: 400;
	font-size: 12px;
	color: #666666;
}

/* Fuehrerschein-Karte im Mieter-Profil: Aufbau wie die Karte in den Mieter-Informationen
   des Vermieterbereichs. Ohne gueltige Pruefung stehen die Werte grau (wie .kb-package.locked)
   und der Pruefungsknopf aus der Buchungsstrecke erscheint darunter. */
.kb-profilemain fieldset.kb-licencepanel .kb-fieldgrid {
	margin-top: 0;
}
.kb-licencepanel .licenceaction {
	margin-top: 18px;
}
.kb-licencepanel .Textnormal {
	font-size: 15px;
}
.kb-licencepanel.expired .kb-fieldgrid .cap,
.kb-licencepanel.expired .kb-fieldgrid .val,
.kb-licencepanel.expired .Textnormal {
	color: #9A9A9A;
}
.kb-licencepanel.expired .kb-fieldgrid .val .kb-badge {
	color: #1A1A1A;
}

/*#endregion Redesign 2026 - Kundenbereich */
/*#region Redesign 2026 - Typografie/Design-Tokens (zentral) */
/* EIN Style pro Rolle (User-Vorgabe 2026-07-14). Referenz-Look Teaser = Startseiten-Teaser
   (trailer2go-Rent-Software / 24-7-Anhaengermodul). Titel immer 900, Textfarbe #000000.
   Schriftgroessen/-gewichte und Farben NUR hier aendern - die Seiten-Regionen enthalten nur
   noch Layout. Weiss-Ausnahmen (Text auf blauen Flaechen) und Responsive stehen am Blockende.
   NIE neue Schrift-Regeln in den Seiten-Regionen anlegen - Selektor hier der Rolle zuordnen. */

:root {
	--rd-font: "Figtree", Arial, Helvetica, Geneva, Tahoma, Verdana, sans-serif;
	--rd-blue: #134890;
	--rd-cyan: #29ABE2;
	--rd-text: #000000;
	--rd-gray: #666666;
	--rd-pad: 10vw;
	/* Seitenrand Content-Flucht (mobil 24px, s. Mobile-Stufe) */;
}

/* --- H1 Seitentitel: 52/900 blau --- */
.home .home-claim2026 h1, .howto2026 .step-left h2,
#Content .cms-claim .claim-title,
#Content section.cms-hero .hero-title, .fleet2026 .fleet-hero-text h1,
.fleet2026 .fleet-advice h2, .registration2026 .registration-hero h1,
.partner2026 .partner-headline, .partner2026 .partner-hero h1, .contact2026 .contact-hero h1,
.registration2026 .registration-hero h1 {
	font-family: var(--rd-font);
	font-size: 62px;
	font-weight: 900;
	line-height: 1.3;
	color: var(--rd-blue);
}

.partner2026 .partner-hero h1 {
	text-align: left;
}

/* --- H2 Sektions-/Artikeltitel: 36/900 blau --- */
#Content article.introtext .introtextcontainer .Title, #Content article.shorttext .Title, #Content .detailtext2026 .Title, .partner2026 .product-card h3 {
	font-family: var(--rd-font);
	font-size: 36px;
	font-weight: 900;
	line-height: 1.3;
	color: var(--rd-blue);
}

/* --- Teaser-Titel: 28/900 blau (Referenz Startseiten-Teaser) --- */
#Content .cms-teaser .teaser-title {
	font-family: var(--rd-font);
	font-size: 28px;
	font-weight: 900;
	line-height: 1.3;
	color: var(--rd-blue);
}

/* --- H3 Karten-/Panel-Titel: 22/900 blau --- */
#Content .cms-cards .cms-card h3, #Content .infopanels2026 .infopanel .panel-title, .howto2026 .step-card h3, .fleet2026 .fleet-card h3, .fleet2026 .advice-card h3, .knowledge2026 .card-title, #Content article.shorttext .Subtitle, section#Content:is(.site-faq, .site-24_7) article.shorttext h2.Title, #Content article.shorttext h3, #Content .boxes .box .Title, #Content .boxes .box.product .content h2, .detail2026 h1, .partner2026 .net-content h3, .partner2026 .arg-card h3, .partner2026 .pc-price-title, .partner2026 .price-card .pr-name, .contact2026 .contact-card.sent h3, .home .hero2026 .hero-search-title, .stations2026 .filter-title, .booking2026 .booking-login-title {
	font-family: var(--rd-font);
	font-size: 22px;
	font-weight: 900;
	line-height: 1.35;
	color: var(--rd-blue);
}

.partner2026 .net-content h3 {
	text-align: left;
	color: var(--color-font) !important;
}

/* --- H4 Klein-Titel (Formulare/Listen/Infokaesten): 18/900 blau --- */
.detail2026 .Headline, section#Content.site-login .content.login .loginform h2.Title,
.booking2026 fieldset legend,
.booking2026 legend.Untertitel, .booking2026 h2.Untertitel,
.booking2026 .Infos .Headline,
.contact2026 .contact-card .card-title,
.registration2026 .registration-intro .introbox h3,
.registration2026 .registration2026-content legend,
.registration2026 .toggle-label,
#MJUHeader.Header .account-menu .title,
#Content article.introtext .textcontent .Introtitle,
#Content .detailtext2026 .Textnormal h3,
.fleet2026 .fleet-search .label {
	font-size: 18px;
	font-weight: 900;
	line-height: 1.35;
	color: var(--rd-blue);
}

.detail2026 .Headline {
	color: var(--color-font);
}

/* --- Kicker/Ueberzeile: 19/800 blau (Referenz Startseiten-Teaser) --- */
#Content .cms-teaser .teaser-kicker, #Content .cms-claim .claim-kicker, .partner2026 .partner-kicker, .partner2026 .pc-kicker, .home .home-claim2026 .welcome {
	font-family: var(--rd-font);
	font-size: 24px;
	font-weight: 900;
	line-height: 1.3;
	color: var(--rd-blue);
}
.partner2026 .partner-kicker {
	color: var(--rd-cyan);
}
.home .home-claim2026 .welcome {
	color: #000000;
}

/* --- Untertitel (unter H1/Hero): 17/500 --- */
.home .home-claim2026 .welcome-text, #Content .cms-claim .claim-subtitle, #Content section.cms-hero .hero-subtitle, .registration2026 .registration-hero p, .contact2026 .contact-hero p, .fleet2026 .fleet-hero-text p, section#Content:is(.site-faq, .site-24_7) article.shorttext .Subtitle {
	font-family: var(--rd-font);
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--rd-text);
}

/* --- Fliesstext Karten/Panels/Formulare: 15/500 --- */
#Content .cms-teaser .teaser-text,
#Content .infopanels2026 .infopanel .panel-text,
#Content .boxes .box .Subtitle,
#Content .cms-cards .cms-card .teaser,
#Content article.introtext .textcontent .Textnormal,
.knowledge2026 .card-teaser,
.partner2026 .arg-card p,
.partner2026 .branding-box p,
.partner2026 .product-card p, .howto2026 .step-card p,
.howto2026 .step-card .step-text,
.fleet2026 .advice-card .teaser,
.fleet2026 .fleet-card .description,
.payed2026 .payed-card .Textnormal,
.registration2026 .registration-intro .introbox .Textnormal,
section#Content.site-login .content.login .loginform .Textnormal {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.44;
	color: var(--rd-text);
}

/* --- Aktions-Buttons: 16/600 weiss --- */
.home .hero2026 .hero-submit,
.stations2026 .filter-submit,
.contact2026 .contact-card .Button,
.partner2026 .Button,
.registration2026 .registration2026-content .Button,
#MJUHeader.Header .account-menu .logout, .model-panel-footer .apply-button,
.stations2026 .model-panel-footer .apply-button, .booking2026 .Button,
section#Content.site-login .content.login .loginform .Button,
.fleet2026 .fleet-card .fleet-button {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	line-height: 1.2;
	color: #FFFFFF;
	text-align: center;
	box-sizing: border-box;
	min-width: 300px;
}

/* --- CMS-Link-Pills: 15/800 weiss (Referenz Startseiten-Teaser) --- */
#Content .cms-teaser .teaser-button, #Content .cms-claim .claim-button, #Content .boxes .box a.link, #Content section.cms-hero .hero-button, .howto2026 .step-card .step-button {
	font-family: var(--rd-font);
	font-size: 18px;
	font-weight: 800;
	color: #FFFFFF;
	min-width: 300px;
	box-sizing: border-box;
	text-align: center;
	border: 1px solid #FFFFFF;
}

/* --- Kleine Buttons (Listen/Karten): 14/600 weiss --- */
.stations2026 .Station a.Button.station-action, .detail2026 a.Button.station-action, .stations2026 .mapboxgl-popup a.Button.station-action,
#Content .boxes .box.product .content a.Button {
	font-family: var(--rd-font);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	color: #FFFFFF;
}
.stations2026 .Station a.Button.station-action, .detail2026 a.Button.station-action {
	margin: 0;
	white-space: nowrap;
	padding: 5px 15px;
}

/* --- Meta/Beschreibungstexte: 14/500 grau --- */
#Content .downloads .Download-Link .description,
#MJUHeader.Header .account-menu .account-info .email {
	font-size: 16px;
	font-weight: 500;
	color: var(--rd-blue);
	hyphens: auto;
}

.stations2026 .Station .availability {
	font-size: 12px;
	font-weight: 500;
	color: var(--font-color);
}

/* --- Weiterlesen-Textlinks: 16/800 unterstrichen + Pfeil (XD) --- */
.knowledge2026 .card-more, #Content .cms-cards .cms-card .more, .fleet2026 .advice-card .more {
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	color: var(--color-dark);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.knowledge2026 .card-more::after, #Content .cms-cards .cms-card .more::after, .fleet2026 .advice-card .more::after {
	content: '';
	display: inline-block;
	width: 22px;
	height: 11px;
	margin-left: 10px;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M0 6h22M17 1l5 5-5 5' fill='none' stroke='%23000000' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M0 6h22M17 1l5 5-5 5' fill='none' stroke='%23000000' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
}
.knowledge2026 .card-more:hover, #Content .cms-cards .cms-card .more:hover, .fleet2026 .advice-card .more:hover {
	color: var(--rd-cyan);
}

/* --- Ausnahmen: weisser Text auf blauen/Bild-Flaechen --- */
#Content section.cms-hero .hero-title, #Content section.cms-hero .hero-subtitle, .howto2026 .step-card h3, .howto2026 .step-card p, .howto2026 .step-card .step-text, .partner2026 .product-card h3, .partner2026 .product-card p, .partner2026 .pc-price-title, .partner2026 .pc-kicker, .fleet2026 .fleet-search .label {
	color: #FFFFFF;
	text-align: left;
}

/* --- Responsive: Zwischenstufe - Seitenrand ab 1200px enger (muss NACH der 10vw-Basis und VOR der 990px-Stufe stehen, Kaskade!) --- */
@media (max-width: 1280px) {
	:root {
		--rd-pad: 4vw;
	}
	.kb-rt-bookings {
		--kb-rt-cols: 0.75fr 1.25fr 1.25fr 1.35fr 1fr 44px;
	}
	.kb-button {
		min-width: 0;
	}
	.cell.id .kb-badge {
		display: none;
	}
	.home .hero2026 .hero-submit,
	.stations2026 .filter-submit, .contact2026 .contact-card .Button,
	.partner2026 .Button,
	.registration2026 .registration2026-content .Button,
	#MJUHeader.Header .account-menu .logout, .model-panel-footer .apply-button,
	.stations2026 .model-panel-footer .apply-button, .booking2026 .Button,
	section#Content.site-login .content.login .loginform .Button,
	.fleet2026 .fleet-card .fleet-button {
		min-width: auto;
	}
	.home .hero2026 .hero-search-fields .field.submit {
		margin-left: 0px;
	}
	.home .hero2026 .hero-search-fields .field.date,
	.home .hero2026 .hero-search-fields .field.duration {
		flex: 0.65 1 0;
	}
}

/* --- Responsive: Mobile-Stufe (Haupt-Switch 990px, XD-Referenz 375px "ttg_mobile_375px_final") --- */
@media (max-width: 990px) {
    :root {
    	--rd-pad: 24px;
    }

    /* H1 Seitentitel 62 -> 34 */
    .home .home-claim2026 h1, .howto2026 .step-left h2, #Content .cms-claim .claim-title, .fleet2026 .fleet-hero-text h1, .fleet2026 .fleet-advice h2, .registration2026 .registration-hero h1, .partner2026 .partner-headline, .partner2026 .partner-hero h1, .contact2026 .contact-hero h1 {
    	font-size: 34px;
    }

    /* H2 Sektions-/Artikeltitel 36 -> 26 */
    #Content article.introtext .introtextcontainer .Title, #Content article.shorttext .Title, #Content .detailtext2026 .Title, .partner2026 .product-card h3 {
    	font-size: 26px;
    }

    /* Teaser-Titel 28 -> 22 */
    #Content .cms-teaser .teaser-title {
    	font-size: 22px;
    }

    /* H3 Karten-/Panel-Titel 22 -> 20 */
    #Content .cms-cards .cms-card h3, #Content .infopanels2026 .infopanel .panel-title, .howto2026 .step-card h3, .fleet2026 .fleet-card h3, .fleet2026 .advice-card h3, .knowledge2026 .card-title, #Content article.shorttext .Subtitle, section#Content:is(.site-faq, .site-24_7) article.shorttext h2.Title, #Content article.shorttext h3, #Content .boxes .box .Title, #Content .boxes .box.product .content h2, .detail2026 h1, .partner2026 .net-content h3, .partner2026 .arg-card h3, .partner2026 .pc-price-title, .partner2026 .price-card .pr-name, .contact2026 .contact-card.sent h3, .home .hero2026 .hero-search-title, .stations2026 .filter-title, .booking2026 .booking-login-title {
    	font-size: 20px;
    }

    /* Kicker 24 -> 18 */
    #Content .cms-teaser .teaser-kicker, #Content .cms-claim .claim-kicker, .partner2026 .partner-kicker, .partner2026 .pc-kicker, .home .home-claim2026 .welcome {
    	font-size: 18px;
    }

    /* Untertitel 18 -> 16 */
    .home .home-claim2026 .welcome-text, #Content .cms-claim .claim-subtitle, .registration2026 .registration-hero p, .contact2026 .contact-hero p, .fleet2026 .fleet-hero-text p, section#Content:is(.site-faq, .site-24_7) article.shorttext .Subtitle {
    	font-size: 16px;
    }

    /* Hero-Baustein (vormals 900px-Stufe) */
    #Content section.cms-hero .hero-title {
    	font-size: 28px;
    }
    #Content section.cms-hero .hero-subtitle {
    	font-size: 16px;
    }

    /* Buttons/Pills: 300px-Mindestbreite passt nicht auf schmale Screens */
    .home .hero2026 .hero-submit, .stations2026 .filter-submit, .contact2026 .contact-card .Button, .partner2026 .Button, .registration2026 .registration2026-content .Button, #MJUHeader.Header .account-menu .logout, .model-panel-footer .apply-button, .stations2026 .model-panel-footer .apply-button, .booking2026 .Button, section#Content.site-login .content.login .loginform .Button, .payed2026 .payed-actions .Button, .fleet2026 .fleet-card .fleet-button, #Content .cms-teaser .teaser-button, #Content .cms-claim .claim-button, #Content .boxes .box a.link, #Content section.cms-hero .hero-button, .howto2026 .step-card .step-button {
    	min-width: 0;
    	max-width: 100%;
    }
}
/*#endregion Redesign 2026 - Typografie/Design-Tokens (zentral) */


/*#region Redesign 2026 - Akkordeon/Toggle (zentral) */
/* EIN zentraler Block fuer ALLE Akkordeon-Toggles der Redesign-Seiten (h2.toggle[data-group="accordeon"] + article.toggle-content).
   Referenz-Look = FAQ-Seite (User-Freigabe 2026-07-11). Beim Hover aendert sich NUR die Textfarbe - nie der Hintergrund.
   Seitenspezifisch sind AUSSCHLIESSLICH die Spalten-/Hintergrund-Varianten am Ende dieses Blocks (site-faq: 1015px-Spalte;
   site-24_7: Spalte auf hellblauem Vollbleed-Band). KEINE Toggle-Regeln in anderen Regionen anlegen (User-Vorgabe)!
   Pfeil-Rotation kommt weiterhin aus der Alt-Regel .toggle.toggle-expanded span.expander (~Z. 7027). */
#Content h2.toggle[data-group="accordeon"] {
	display: flex;
	align-items: center;
	gap: 18px;
	float: none;
	width: 100%;
	max-width: none;
	background: none;
	color: var(--rd-text);
	font-family: var(--rd-font);
	font-size: 16px;
	font-weight: 800;
	line-height: 1.4;
	text-transform: none;
	padding: 18px 15px;
	margin: 0 auto;
	border: 0;
	border-bottom: 1px solid var(--rd-text);
	box-sizing: border-box;
	cursor: pointer;
}
#Content article.shorttext + h2.toggle[data-group="accordeon"] {
	border-top: 1px solid var(--rd-text);
}
#Content h2.toggle[data-group="accordeon"]:hover {
	color: var(--rd-blue);
	opacity: 1;
}
#Content h2.toggle[data-group="accordeon"].toggle-expanded {
	border-bottom: none;
}
#Content h2.toggle[data-group="accordeon"] span.expander {
	position: static;
	order: 2;
	flex: 0 0 auto;
	float: none;
	width: 16px;
	height: 16px;
	margin: 0 0 0 auto;
	background: url('../images/redesign2026/icons/chevron-down.svg') center / 16px auto no-repeat;
	transition: transform 0.2s ease;
}
#Content h2.toggle[data-group="accordeon"] + article.toggle-content {
	float: none;
	width: auto;
	max-width: none;
	margin: 0 auto;
	padding: 0 45px 30px 15px;
	border-bottom: 1px solid var(--rd-text);
	background: none;
	box-sizing: border-box;
	text-align: left;
}
#Content h2.toggle[data-group="accordeon"] + article.toggle-content .Textnormal {
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7;
	color: var(--rd-text);
}
#Content h2.toggle[data-group="accordeon"] + article.toggle-content .Textnormal a {
	color: var(--rd-blue);
}
#Content h2.toggle[data-group="accordeon"] + article.toggle-content p {
	margin: 0 0 10px 0;
	font-family: var(--rd-font);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7;
	color: var(--rd-text);
}
#Content h2.toggle[data-group="accordeon"] + article.toggle-content ul, #Content h2.toggle[data-group="accordeon"] + article.toggle-content ol {
	margin: 10px 0 10px 22px;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7;
}
#Content h2.toggle[data-group="accordeon"] + article.toggle-content li {
	margin-bottom: 8px;
}
/* Variante FAQ-Seite: 1015px-Spalte zentriert */
section#Content.site-faq h2.toggle[data-group="accordeon"], section#Content.site-faq h2.toggle[data-group="accordeon"] + article.toggle-content {
	max-width: 1015px;
}
/* Variante 24/7 (So funktionierts): Spalte auf hellblauem Vollbleed-Band, gleiche 15/45px-Einzuege wie FAQ-Seite;
   Trennlinien als 1015px-Gradient statt border (border wuerde uebers ganze Band laufen) */
section#Content.site-24_7 h2.toggle[data-group="accordeon"] {
	position: relative;
	background-color: #E9F5FC;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	width: auto;
	max-width: none;
	padding-left: calc(50vw - 507px + 15px);
	padding-right: calc(50vw - 507px + 15px);
	border-bottom: none;
	background-image: linear-gradient(var(--rd-text), var(--rd-text));
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 1015px 1px;
}

section#Content.site-24_7 h2.toggle[data-group="accordeon"].toggle-expanded {
	background-image: none;
}
section#Content.site-24_7 section + h2.toggle[data-group="accordeon"]:before {
	content: ' ';
	position: absolute;
	height: 100%;
	left: 0;
	right: 0;
	width: auto;
	display: block;
	max-width: none;
	z-index: 20;
	background-image: linear-gradient(var(--rd-text), var(--rd-text));
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 1015px 1px;
}
section#Content.site-24_7 h2.toggle[data-group="accordeon"] + article.toggle-content {
	position: relative;
	background-color: #E9F5FC;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	width: auto;
	max-width: none;
	padding: 0 calc(50vw - 507px + 45px) 30px calc(50vw - 507px + 15px);
	border-bottom: none;
	background-image: linear-gradient(var(--rd-text), var(--rd-text));
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 1015px 1px;
}
/*#endregion Redesign 2026 - Akkordeon/Toggle (zentral) */

/*#region Redesign 2026 - Scrollbars (zentral) */
/* Firefox */
* {
	scrollbar-width: thin;
	scrollbar-color: #c1c1c1 transparent;
}
/* WebKit/Blink (Chrome, Edge, Safari) */
::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
::-webkit-scrollbar-track {
	background: transparent;
}
::-webkit-scrollbar-thumb {
	background-color: #c1c1c1;
	border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
	background-color: #c1c1c1;
}
/* Pfeile/Buttons ausblenden */
::-webkit-scrollbar-button {
	display: none;
	width: 0;
	height: 0;
}
::-webkit-scrollbar-corner {
	background: transparent;
}
/*#endregion Redesign 2026 - Scrollbars (zentral) */

/*#region Redesign 2026 - Datentabellen im CMS (zentral) */
/* Die Konditionstabellen der Versicherungsseite nutzen table.datatable. Die erste
   Spalte traegt class="text" und bleibt damit linksbuendig und umbrechend - im Bestand
   deckt das aber nur td.text ab, die Kopfzelle bliebe zentriert. Bewusst ueber die
   Seitenklasse am body eingegrenzt: die Handelspartner-Seite liegt in derselben
   .kb-cms-Karte und setzt an 14 Kopfzellen ebenfalls th class="text nowrap" - die
   sollen zentriert bleiben. */
.site-dashboard-services-insurances table.datatable th.text {
	text-align: left;
}
/*#endregion Redesign 2026 - Datentabellen im CMS (zentral) */

/*#region Redesign 2026 - Downloads icons */
.site-dashboard_services_downloads .boxes .box .box_icon img {
	max-height: 200px;
}

/* Alle Icon-Kacheln gleich hoch. Die Hoehe hing an der Kachelbreite, und die haengt an der
   Reihenbelegung: #Content .boxes .box zieht die Kacheln mit flex: 1 1 240px auf, eine
   angebrochene letzte Reihe wird also breiter. Ueber .boxes.four .box .box_icon
   (aspect-ratio: 4/3) schlug das voll auf die Hoehe durch - bei 768px war die einzelne
   letzte Kachel 553px hoch statt 285px.
   Zweite Quelle: .site-dashboard-services-downloads .box_icon setzt height: unset und das
   Bild auf width: 100%/height: auto, beides !important - die Icon-Flaeche folgte damit der
   Bildhoehe, und die ist bei den breiten Illustrationen (Kuehlanhaenger gross, Bartainer,
   Kastenanhaenger gross: viewBox 940-980 x 590) kleiner als die 200px der uebrigen.
   Feste Flaeche 200px + object-fit: contain loest beides. Die Illustrationen aendern sich
   dadurch nicht - sie standen schon mit contain in einer 200px hohen Box. Der feste
   Innenabstand ersetzt die 2% (Prozent von der Breite, also wieder breitenabhaengig). */
.site-dashboard_services_downloads .boxes.four.position-1 .box .box_icon {
	aspect-ratio: auto;
	height: 200px !important;
	margin: 0 0 6px 0 !important;
}

.site-dashboard_services_downloads .boxes.four.position-1 .box .box_icon img {
	width: 100% !important;
	height: 100% !important;
	max-height: none;
	object-fit: contain;
}
/*#endregion Redesign 2026 - Downloads icons */

/*#region Redesign 2026 - Downloads Kachelraster und Downloadlisten */
/* Eine angebrochene letzte Reihe stand mittig: #Content .boxes ist ein Flexcontainer mit
   justify-content: center, und flex: 1 1 240px zieht die verbliebenen Kacheln zusaetzlich
   bis max-width 340px auf. Ein Raster mit gleich breiten Spalten haelt alle Kacheln auf
   derselben Breite und die letzte Reihe linksbuendig. Die Spaltenbreite entspricht der
   bisherigen Flex-Basis, die Reihenbelegung bleibt damit unveraendert (1400px = 5 Spalten).
   Bewusst auf die Downloadseite eingegrenzt: auf home, 24_7 und demo stehen zwei bis vier
   Kacheln, die dort zentriert bleiben sollen. */
#Content.site-dashboard_services_downloads .boxes {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	align-items: start;
}

/* Zwei aufeinanderfolgende Downloadlisten - im Logo-Block der Baustein download.directory
   (Logopaket) gefolgt von zwei download-Bausteinen (JPG/PDF) - standen 50px auseinander
   (margin-bottom des ersten Blocks) und wirkten wie zwei getrennte Bereiche. Buendig
   aneinander laufen die Trennlinien der Eintraege durch. */
#Content.site-dashboard_services_downloads .downloads + .downloads {
	margin-top: -50px;
}
/*#endregion Redesign 2026 - Downloads Kachelraster und Downloadlisten */
