body {
	background: linear-gradient(160deg, #1a1b2e 0%, var(--KfsBlueDark) 45%, #1b2a40 100%);
	background-attachment: fixed;
	position: relative;
	color: var(--KfsTextMain);
	font-family: var(--KfsFontDefault);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 0;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	font-size: 15px;
}
@media(max-width: 720px) {
	body {
		font-size: 14px;
	}
}
.container {
	width: 80%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
@media(max-width: 575px) {
	body nav {
		display: initial !important;
		margin-bottom: initial !important;
	}
}
p {
	margin: 0px !important;
	margin-bottom: 10px !important;
	text-align: justify;
}

fieldset {
	border: none;
	text-align: left;
	margin-top: 10px;
	padding: 10px 5px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.tab-pane fieldset {
	margin-top: 0px;
}

a,
#klaro .klaro .cookie-modal a,
#klaro .klaro .context-notice a,
#klaro .klaro .cookie-notice a {
	color: var(--KfsTextMain);
	font-family: var(--KfsFontDefault);
	text-decoration: none;
}
a:hover,
#klaro .klaro .cookie-modal a:hover,
#klaro .klaro .context-notice a:hover,
#klaro .klaro .cookie-notice a:hover {
	text-decoration: underline !important;
}

/* Joomla Messages / Alerts */
joomla-alert,
.alert {
	display: block;
	position: relative;
	margin: 0 0 18px;
	padding: 12px 14px;
	border: 1px solid rgba(37, 38, 56, 0.18);
	border-left-width: 4px;
	border-radius: var(--KfsRadius);
	background: rgba(255, 255, 255, 0.95);
	color: var(--KfsTextMain);
	font-size: 14px;
	line-height: 1.45;
	box-shadow: 0 2px 10px rgba(37, 38, 56, 0.08);
}
joomla-alert a,
.alert a {
	color: inherit;
	font-weight: 600;
	text-decoration: underline;
}
joomla-alert button.close,
joomla-alert .btn-close,
.alert button.close,
.alert .btn-close {
	opacity: 0.8;
}
joomla-alert button.close:hover,
joomla-alert .btn-close:hover,
.alert button.close:hover,
.alert .btn-close:hover {
	opacity: 1;
}

joomla-alert[type="success"],
joomla-alert[type="message"],
.alert-success {
	background: #edf8f1;
	border-color: #9ecfb0;
	border-left-color: #3f8f5d;
	color: #1f5d34;
}
joomla-alert[type="info"],
joomla-alert[type="notice"],
.alert-info {
	background: #eaf5fb;
	border-color: #a7d1e8;
	border-left-color: var(--KfsBlueLight);
	color: #1f4f69;
}
joomla-alert[type="warning"],
.alert-warning {
	background: #fff7e8;
	border-color: #efd6a2;
	border-left-color: #c88617;
	color: #6e4a0d;
}
joomla-alert[type="danger"],
joomla-alert[type="error"],
.alert-danger,
.alert-error {
	background: #fdeeee;
	border-color: #ebb6b6;
	border-left-color: #b73a3a;
	color: #7b1f1f;
}

@media (max-width: 575px) {
	joomla-alert,
	.alert {
		padding: 10px 12px;
		font-size: 13px;
	}
}
.bottomShadow {
	box-shadow: var(--KfsShadow);
}
.is-mobile #main-nav {
	box-shadow: var(--KfsShadow);
}

/* MAIN part style */
main {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
main .container {
	padding: 25px;
	padding-bottom: 80px;
	padding-top: 50px;
	position: relative;
	flex: 1;
	background: linear-gradient(175deg, #f5f7fa 0%, #eaecf1 100%);
}
/* Dünne Akzentlinie oben an der Content-Area */
main .container::before {
	content: "";
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 3px;
	background: linear-gradient(90deg, transparent 0%, var(--KfsBlueLight) 30%, var(--KfsBlueDark) 70%, transparent 100%);
	opacity: 0.5;
}
.module {
	padding: 25px;
	position: relative;
	background: rgba(255, 255, 255, 0.80);
	border-radius: var(--KfsRadius);
	border: 1px solid rgba(37, 38, 56, 0.07);
	box-shadow: 0 2px 12px rgba(37, 38, 56, 0.07);
	margin-bottom: 24px;
	transition: box-shadow var(--KfsTransition);
}
.module:hover {
	box-shadow: 0 4px 20px rgba(37, 38, 56, 0.12);
}

/* HEADER style */
header, footer {
  flex-shrink: 0;
}
.site-header {
	position: sticky;
	top: 0;
	background: rgba(255, 255, 255, 1);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	z-index: 1000;
	padding: 25px 0;
	border-bottom: 1px solid rgba(37, 38, 56, 0.08);
	box-shadow: 0 2px 16px rgba(37, 38, 56, 0.10);
}
/* Farbige Akzentlinie am oberen Rand des Headers */
.site-header::before {
	content: "";
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--KfsBlueDark) 0%, var(--KfsBlueLight) 50%, var(--KfsBlueDark) 100%);
}
.header-flex {
	display: grid;
	grid-template-columns: max-content 1fr auto;
	align-items: center;
	gap: 20px;
}

/* Logo + Icons nebeneinander */
.logo-area {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 10px;
}
.logo-area .menu-head-dropdown {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 6px;
	/* Icons auf Höhe von "Kathrin" zentrieren: (Zeilenhöhe 28px - Buttongröße 30px) / 2 ≈ 0 → leichter Versatz nach unten */
	padding-top: 1px;
}

/* TEXT Logo style */
.logo-text,
.logo-text:hover {
	display: block;
	line-height: 1;
	font-size: 30px;
	font-weight: bold;
	text-decoration: none !important;
	cursor: default;
}
.logo-text span {
	display: block;
	color: var(--KfsBlueDark);
}
.logo-text span.logo_part_2 {
	margin-left: 13px;
	color: var(--KfsBlueLight);
	margin-top: -7px;
}
@media (max-width: 720px) {
	.logo-text {
		font-size: 20px;
	}
	.logo-text span.logo_part_2 {
		margin-left: 10px;
		margin-top: -4px;
	}
}

/* TITLES style */
.VzTitle,
.module-title, h1, h2 {
    font-family: var(--KfsFontHeading);
    color: var(--KfsBlueDark);
    border-bottom: 1px solid var(--KfsBlueDark);
    display: inline-block;
    padding-bottom: 5px;
    margin-top: 0;
    margin-bottom: 10px;
    letter-spacing: 0.5px;
	width: 100%;
}
.module-title,
h1 {
    margin-bottom: 20px;
    text-transform: uppercase;
    border-bottom: 3px solid var(--KfsBlueDark);
    font-size: 20px;
}
h2 {
	margin-top: 5px;
	font-size: 15px;
}
@media ( max-width : 500px) {
	h1 {
		font-size: 16px;
	}
	h2 {
		font-size: 12px;
	}
}

/* Page Header Styling */
.page-header {
    margin-bottom: 25px;
    border: none;
    padding-bottom: 10px;
    padding-left: 40px;
}
.HdOrderViewProfile .page-header {
    padding-left: 0px;
}
@media (max-width: 720px) {
	.page-header {
	    padding-left: 30px;
	}
}
.page-header h1,
.page-header h2,
.module-title,
.VzTitle {
    color: var(--KfsBlueDark);
    margin: 0;
    padding: 0;
    position: relative;
    display: inline-block;
    padding-left: 40px;
    margin-left: -40px;
	overflow-wrap: break-word;
}
.page-header h1::after,
.page-header h2::after,
.module-title::after {
    content: "";
    display: block;
    width: 30px;
    background-color: var(--KfsBlueLight);
    border-radius: 2px;
    position: absolute;
  	left: 0px;
	top: 0px;
	bottom: 0px;
}
.module-title {
    font-size: 1.4rem;
}
@media(max-width: 720px) {
	.page-header h1,
	.page-header h2,
	.module-title,
	.VzTitle {
	    padding-left: 30px;
	    margin-left: -30px;
	}
	.page-header h1::after,
	.page-header h2::after,
	.module-title::after {
	    width: 20px;
	}
}
.module-title::after {
    width: 40px;
    height: 3px;
}

/* MENU style */
nav ul {
	list-style: none;
	display: flex;
	gap: 25px;
	margin: 0;
	padding: 0;
}
nav a {
	text-decoration: none;
	color: var(--KfsBlueDark);
	font-weight: bold;
	transition: color var(--KfsTransition);
}

/* Hauptnavigation */
nav#main-nav {
	text-align: right;
}
#main-nav ul {
	display: inline-flex;
	list-style: none;
	gap: 20px;
	padding: 0;
	justify-content: right;
}
#main-nav a {
	text-decoration: none;
	color: var(--KfsBlueDark);
	font-weight: normal;
  	text-transform: uppercase;
	font-size: 13px;
	letter-spacing: 0.5px;
	position: relative;
	padding-bottom: 3px;
}
#main-nav a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 2px;
	background-color: var(--KfsBlueLight);
	border-radius: 1px;
	transition: width var(--KfsTransition);
}
#main-nav a:hover,
#main-nav li.active > a {
	color: var(--KfsBlueDark);
	text-decoration: none !important;
}
#main-nav a:hover::after,
#main-nav li.active > a::after {
	width: 100%;
}
#main-nav ul.nav a:has(> span.fa) {
	display: flex;
	flex-direction: column;
	align-items: anchor-center;
	font-size: 14px;
}
#main-nav ul.nav a span.fa {
	font-size: 20px;
	margin-bottom: 5px;
}

/* HEADER ACTIONS (Login + Warenkorb) */
.header-actions {
	display: flex;
	align-items: center;
	gap: 6px;
}

/* Burger Button */
.menu-toggle {
    display: none;
    width: 30px;
    height: 24px;
    background: none;
    border: none;
    cursor: pointer;
    position: relative;
    flex-direction: column;
    justify-content: space-between;
    padding: 0;
    flex-shrink: 0;
}
.menu-toggle span {
    display: block;
    width: 100%;
    height: 3px;
    background: var(--KfsBlueDark);
    border-radius: 2px;
    transition: transform 0.3s ease, opacity 0.3s ease;
    transform-origin: center;
}
.menu-toggle.open span:nth-child(1) {
	transform: translateY(10.5px) rotate(45deg);
}
.menu-toggle.open span:nth-child(2) {
	opacity: 0;
	transform: scaleX(0);
}
.menu-toggle.open span:nth-child(3) {
	transform: translateY(-10.5px) rotate(-45deg);
}

/* Mobile Status */
.is-mobile .menu-toggle {
	display: flex;
}
.is-mobile #main-nav {
	display: none !important;
	width: 100%;
	position: absolute;
	top: 100%;
	left: 0;
	background-color: var(--KfsWhite);
	border-top: 1px solid rgba(37, 38, 56, 0.08);
	animation: slideDown 0.25s ease forwards;
}
@keyframes slideDown {
	from { opacity: 0; transform: translateY(-8px); }
	to   { opacity: 1; transform: translateY(0); }
}
.is-mobile #main-nav.active {
	display: block !important;
}
.is-mobile #main-nav ul {
	display: flex;
	flex-direction: column;
	text-align: left;
	padding: 16px 20px 20px;
	gap: 4px;
}
.is-mobile #main-nav ul li {
	position: relative;
	width: 100%;
}
.is-mobile #main-nav a {
	display: block;
	padding: 8px 0;
	border-bottom: 1px solid rgba(37, 38, 56, 0.06);
	font-size: 14px;
}
.is-mobile #main-nav a::after {
	display: none;
}
.is-mobile #main-nav ul li:last-child a {
	border-bottom: none;
}
.is-mobile #main-nav ul.nav a:has(> span.fa) {
	display: block;
	padding-left: 35px;
}
.is-mobile #main-nav ul.nav a span.fa {
	position: absolute;
	left: 0px;
}

/* FOOTER style */
footer {
	position: fixed;
	bottom: 0px;
	left: 0px;
	right: 0px;

	border-top: 1px solid rgba(37, 38, 56, 0.10);
	min-height: 20px;
	background: linear-gradient(180deg, #f8f9fb 0%, var(--KfsWhite) 100%);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	padding: 10px;
	box-shadow: 0 -2px 12px rgba(37, 38, 56, 0.06);
}
footer .container {
	display: grid;
	grid-template-columns: auto max-content;
	align-items: center;
}
footer .container > div {
	text-align: center;
}
footer ul.nav {
	display: inline-flex;
	margin: 0px;
	padding: 0px;
}
footer ul.nav > li {
	padding: 0px;
	padding-left: 10px;
	padding-right: 10px;
	border-left: 1px solid var(--KfsTextMain);
}
footer ul.nav > li:first-child {
	border-left: 0;
}
footer,
footer ul.nav > li,
footer ul.nav > li a {
	color: var(--KfsTextMain);
	font-size: 13px;
}
@media ( max-width : 500px) {
	footer .container {
		display: block;
	}
	footer .container > div {
		margin-top: 5px;
	}
	footer .container > div:first-child {
		margin-top: 0px;
	}
}
@media ( max-width : 280px) {
	footer .container ul {
		display: block;
	}
	footer ul.nav > li {
		padding: 2px 0px;
		border: 0px;
	}
}

/* COOKIE consent style */
.showCookieConsents {
	background: var(--KfsBlueDark);
	border: 1px solid var(--KfsTextWhite);
	color: var(--KfsTextWhite);
}

@media ( max-width : 710px) {
	.showCookieConsents {
		bottom: 50px;
	}
}
@media ( max-width : 500px) {
	.showCookieConsents {
		bottom: 60px;
	}
}
@media ( max-width : 280px) {
	.showCookieConsents {
		bottom: 90px;
	}
}
.klaro .cookie-modal .cm-modal.cm-klaro,
.klaro .cookie-modal-notice {
	border: 1px solid var(--KfsTextWhite) !important;
	padding: 30px;
	background-color: var(--KfsBlueDark) !important;
	color: var(--KfsTextWhite) !important;
}
.klaro .cookie-modal p, .klaro .cookie-modal strong, .klaro .cookie-modal h1, .klaro .cookie-modal h2, .klaro .cookie-modal ul, .klaro .cookie-modal li, .klaro .context-notice p, .klaro .context-notice strong, .klaro .context-notice h1, .klaro .context-notice h2, .klaro .context-notice ul, .klaro .context-notice li, .klaro .cookie-notice p, .klaro .cookie-notice strong, .klaro .cookie-notice h1, .klaro .cookie-notice h2, .klaro .cookie-notice ul, .klaro .cookie-notice li {
	color: var(--KfsTextWhite) !important;
}
.klaro .cookie-modal a, .klaro .context-notice a, .klaro .cookie-notice a {
	color: var(--KfsTextWhite) !important;
	text-decoration: underline;
}
#klaro .klaro .cookie-modal .cm-modal .cm-header h1 {
	font-size: 1.4em;
	margin-bottom: 10px;
}
.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider,
.klaro .context-notice .cm-list-input:checked + .cm-list-label .slider,
.klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider {
	background-color: var(--KfsBlueDark) !important;
	border: 1px solid var(--KfsTextWhite) !important;
}
.klaro .cookie-modal .cm-list-input:checked + .cm-list-label .slider::before,
.klaro .context-notice .cm-list-input:checked + .cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-input:checked + .cm-list-label .slider::before {
	background-color: var(--KfsTextWhite) !important;
}
.klaro .cookie-modal .cm-list-label .slider, .klaro .context-notice .cm-list-label .slider, .klaro .cookie-notice .cm-list-label .slider {
	background-color: var(--KfsTextWhite) !important;
}
.klaro .cookie-modal .cm-list-label .slider::before,
.klaro .context-notice .cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-label .slider::before {
	background-color: var(--KfsTextWhite) !important;
}
@media ( max-width : 659px) {
	#klaro .klaro .cookie-modal .cm-modal.cm-klaro {
		width: unset;
		left: 0px;
		right: 0px;
	}
}
@media ( max-width : 450px) {
	.klaro .cookie-modal .cm-modal.cm-klaro {
		padding: 10px;
	}
}

.mainContentStart {
	display: grid;
	grid-template-columns: 50% auto;
	grid-gap: 10px;
}
@media (max-width: 720px) {
	.mainContentStart {
		display: block;
	}
}
main .kfsContent img {
	border: 2px solid var(--KfsBlueDark);
	border-radius: 4px;
}
main .kfsContent .loadingImageLayer img {
	border: 0px;
}
.contentImageMain {
	width: 100%;
	max-width: 793px;
	height: auto;
}

/* ============================================================
   DROPDOWN / LOGIN / WARENKORB – Header-Aktionsbereich
   ============================================================ */

.logo-area .menu-head-dropdown .spacer-cell {
	display: none;
}
.logo-area .menu-head-dropdown .HdDropdownWrapper {
	display: inline-flex;
	position: relative;
}
.logo-area .menu-head-dropdown .HdDropdownWrapper .HdDropdownPositionHook {
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
}
.HdDropdownWrapper .HdDropownTrigger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(180deg, #ffffff 0%, #f2f5fa 100%);
	border: 1.5px solid rgba(37, 38, 56, 0.78) !important;
	border-radius: 6px;
	height: 34px;
	width: 34px !important;
	min-width: 34px;
	max-width: 34px;
	padding: 0;
	cursor: pointer;
	box-shadow: 0 2px 7px rgba(37, 38, 56, 0.14);
	transition: border-color var(--KfsTransition), background-color var(--KfsTransition), box-shadow var(--KfsTransition);
	flex-shrink: 0;
	text-decoration: none !important;
	box-sizing: border-box;
}
.HdDropdownWrapper .HdDropownTrigger:hover {
	border-color: var(--KfsBlueLight) !important;
	background: #ffffff;
	box-shadow: 0 4px 12px rgba(53, 152, 200, 0.22);
}
.HdDropdownWrapper .HdDropownTrigger:focus-visible {
	outline: 2px solid rgba(53, 152, 200, 0.42);
	outline-offset: 2px;
}
.HdDropdownWrapper .HdDropownTrigger.open {
	border-color: var(--KfsBlueDark) !important;
	background: #ffffff;
	box-shadow: 0 6px 16px rgba(37, 38, 56, 0.20);
}
.HdDropdownWrapper .HdDropownTrigger [class^="newicon-"],
.HdDropdownWrapper .HdDropownTrigger [class*=" newicon-"] {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 16px;
	color: var(--KfsBlueDark);
	line-height: 1;
}
.HdDropdownWrapper .HdDropownTrigger [class^="newicon-"]::before,
.HdDropdownWrapper .HdDropownTrigger [class*=" newicon-"]::before {
	position: static !important;
	top: auto !important;
	left: auto !important;
	line-height: 1;
	font-size: 16px;
}
.HdDropdownWrapper .HdDropownTrigger img {
	width: 18px;
	height: 18px;
	object-fit: contain;
	margin: 0 !important;
}
.HdDropdownWrapper .HdDropownTrigger .popupClose::before {
	display: none;
}
.HdDropdownWrapper .HdDropdownContent {
	border: 1px solid rgba(37, 38, 56, 0.14);
	padding: 16px 16px 14px;
	padding-top: 28px;
	background-color: #ffffff;
	color: var(--KfsTextMain);
	border-radius: 10px;
	box-shadow: 0 14px 32px rgba(37, 38, 56, 0.20);
	margin-top: 0;
	min-width: 280px !important;
	max-width: min(92vw, 420px);
	font-size: 14px;
	line-height: 1.35;
	border-top-right-radius: 10px;
}
.logo-area .menu-head-dropdown .HdDropdownWrapper .HdDropdownPositionHook .HdDropdownContent {
	left: 0;
	right: auto;
	top: 8px;
}
.HdDropdownWrapper .cart-itemcount {
	display: none !important;
}
.HdDropdownWrapper .HdDropdownPositionHook .HdDropdownContent .popupClose {
	display: block;
	position: absolute;
	right: 8px;
	top: 4px;
	font-size: 20px;
	color: rgba(37, 38, 56, 0.66);
	cursor: pointer;
	transition: color var(--KfsTransition);
}
.HdDropdownWrapper .HdDropdownPositionHook .HdDropdownContent .popupClose:hover {
	color: var(--KfsBlueDark);
}
.HdDropdownWrapper .HdDropdownContent input {
	padding: 8px !important;
	border-radius: var(--KfsRadius) !important;
}
.menu-head-dropdown .HdDropdownContent ul {
	display: grid;
	grid-template-columns: 1fr;
	gap: 6px;
	padding-left: 0;
	margin-bottom: 0;
	list-style: none;
}
.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown ul {
	display: block;
}
.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown li {
	padding-left: 5px;
}
.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown li a {
	display: block;
	width: 100%;
	border: 0 !important;
	padding: 6px 8px;
	padding-left: 15px;
	border-radius: 4px;
	line-height: normal;
	height: auto;
	position: relative;
	color: var(--KfsTextMain);
	white-space: normal;
	transition: background-color var(--KfsTransition), color var(--KfsTransition);
}
.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown li a:hover,
.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown li a:focus-visible {
	background-color: rgba(53, 152, 200, 0.10);
	color: var(--KfsBlueDark);
	text-decoration: none;
}
.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown li .icon-register {
	display: none;
}
.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown li a::before {
	position: absolute;
	display: block;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	content: "\f054";
	font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands";
	font-weight: 900;
	color: var(--KfsBlueLight);
	font-size: 11px;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .loginFormContent {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(37, 38, 56, 0.12);
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent ul.loginModuleLink,
.HdDropdownWrapper.LoginDropdown .HdDropdownContent ul.mod-login__options,
.HdDropdownWrapper.LoginDropdown .HdDropdownContent ul.mod-login-logout__options {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 4px;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login,
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login-logout {
	display: grid;
	gap: 10px;
	margin: 0;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .form-group,
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login-logout .form-group {
	margin: 0;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .input-group {
	display: flex;
	align-items: stretch;
	width: 100%;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .input-group .form-control {
	width: 100%;
	min-width: 0;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .input-group .input-group-text,
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .input-group .input-password-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	padding: 0 10px;
	margin: 0;
	border: 1px solid var(--KfsBlueDark);
	border-left: 0;
	background: #f5f7fa;
	color: var(--KfsBlueDark);
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .input-group .input-group-text {
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .input-group .input-password-toggle {
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .mod-login__remember .form-check {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .mod-login__remember .form-check-input {
	margin: 0;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login .mod-login__submit .btn,
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login-logout .logout-button .btn {
	width: 100%;
	border-radius: 4px;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login-logout .login-greeting {
	font-size: 13px;
	line-height: 1.35;
	padding: 8px 10px;
	background: rgba(53, 152, 200, 0.10);
	border: 1px solid rgba(53, 152, 200, 0.24);
	border-radius: 6px;
}
.HdDropdownWrapper.LoginDropdown .HdDropdownContent .mod-login-logout .logout-button {
	margin-top: 4px;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart {
	display: grid;
	gap: 8px;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table {
	margin: 0 0 8px;
	border-collapse: separate;
	border-spacing: 0;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr td {
	padding: 6px 0;
	border-top: 1px solid rgba(37, 38, 56, 0.10);
	white-space: normal !important;
	font-size: 13px;
	line-height: 1.32;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr:first-child td {
	border-top: 0;
	padding-top: 0;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr td:first-child {
	padding-right: 12px;
	color: #4d5562;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr td:last-child {
	text-align: right;
	font-weight: 600;
	color: var(--KfsBlueDark);
	white-space: nowrap !important;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr.total td,
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr.cart_coupon_total td {
	font-weight: 700;
	color: var(--KfsBlueDark);
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr.total td:first-child,
.HdDropdownWrapper .HdDropdownContent .moduleHdCart table tr.cart_coupon_total td:first-child {
	letter-spacing: 0.01em;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .goToCart,
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton {
	display: block;
	width: 100%;
	margin-top: 6px;
	padding: 8px 12px;
	text-align: center;
	border-radius: 4px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none !important;
	box-sizing: border-box;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .goToCart {
	background: var(--KfsBlueDark);
	color: #ffffff !important;
	border: 1px solid var(--KfsBlueDark);
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .goToCart:hover,
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .goToCart:focus-visible {
	background: #1c1d2c;
	border-color: #1c1d2c;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton {
	background: #c74444;
	color: #ffffff !important;
	border: 1px solid #b73a3a;
	margin: 0;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton:hover,
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton:focus-visible {
	background: #a93232;
	border-color: #8f2a2a;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton:active {
	background: #922a2a;
	border-color: #7f2424;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton .newicon-delete::before {
	content: none;
}
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton [class^="newicon-"],
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton [class*=" newicon-"],
.HdDropdownWrapper .HdDropdownContent .moduleHdCart .resetCartButton .fa {
	display: none !important;
}
.LoginDropdown .HdDropdownContent .logout-button .btn-primary {
	margin-top: 12px !important;
}
@media (max-width: 520px) {
	.HdDropdownWrapper .HdDropdownContent {
		min-width: min(88vw, 280px) !important;
		padding: 14px 12px 12px;
		padding-top: 26px;
	}
	.container div.menu-head-dropdown .HdDropdownWrapper.LoginDropdown li a {
		padding-left: 20px;
	}
}

/* ============================================================
   FORMULARE – Login, Registrierung, Buchung
   ============================================================ */

.VzBox:hover,
.module:hover {
	border-color: var(--KfsBlueLight);
}

.form-horizontal .control-group .controls {
	width: 100%;
}
.form-horizontal .control-group .control-label {
	width: 270px;
}
form.form-horizontal button.btn[type="submit"] {
	margin-left: 203px;
}
form.form-horizontal div.form-check {
	margin-left: 203px;
}

form:not(#user-registration):not(.com-users-reset-confirm__form) fieldset:first-child,
fieldset.ticketHolderFieldset,
.kfsContent .login form fieldset:first-child,
.HdLoginOptions,
#user-registration,
form.com-users-reset-confirm__form,
.HdOrderBookingStepLayer.standalonePage {
	display: inline-block;
	border: 1px solid var(--VzColorForest, var(--KfsBlueDark));
	padding: 30px;
	width: 800px;
	max-width: 100%;
	border-radius: var(--KfsRadius);
	margin-left: 2px;
	box-sizing: border-box;
}
@media (max-width: 1200px) {
	form:not(#user-registration):not(.com-users-reset-confirm__form) fieldset:first-child,
	.kfsContent .login form fieldset:first-child,
	.HdLoginOptions,
	#user-registration,
	form.com-users-reset-confirm__form,
	.HdOrderBookingStepLayer.standalonePage {
		width: 100%;
	}
}
@media (max-width: 400px) {
	fieldset.ticketHolderFieldset {
		border: 0 !important;
		padding: 0 !important;
	}
	fieldset.ticketHolderFieldset legend {
		margin: 0;
		font-weight: bold;
		border-bottom: 1px solid var(--VzColorForest, var(--KfsBlueLight));
		margin-bottom: 5px;
		display: block;
		width: 100%;
	}
	fieldset.ticketHolderFieldset .selectWrapper:not(:has(select.HdLibMobileNumberField)),
	fieldset.ticketHolderFieldset input {
		width: 100%;
		min-width: 100px;
	}
}
.customerProfilePage fieldset:first-child {
	margin-bottom: 20px;
}

/* ============================================================
   USERPROFILE (HDORDER)
   ============================================================ */

.HdOrderLayer.HdOrderViewProfile {
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(37, 38, 56, 0.10);
	border-radius: var(--KfsRadius);
	box-shadow: 0 4px 18px rgba(37, 38, 56, 0.08);
	padding: 18px;
}

.HdOrderLayer.HdOrderViewProfile .page-header h1 {
	font-family: var(--KfsFontHeading);
	font-size: clamp(1.4rem, 2.6vw, 1.9rem);
	color: var(--KfsBlueDark);
	margin: 0 0 16px;
	box-sizing: border-box;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage {
	background: rgba(255, 255, 255, 0.82);
	padding: 0px;
}

.HdOrderLayer.HdOrderViewProfile .profileEditToolbar {
	background: linear-gradient(180deg, #f6f8fc 0%, #edf2f8 100%);
	border: 1px solid rgba(37, 38, 56, 0.14);
	border-radius: var(--KfsRadius);
	padding: 10px 14px;
	margin: 0 0 16px;
	font-weight: 600;
}

.HdOrderLayer.HdOrderViewProfile .profileEditToolbar a {
	color: var(--KfsBlueLight);
	font-weight: 700;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs {
	display: flex;
	flex-wrap: nowrap;
	gap: 4px;
	padding: 0;
	margin: 0 0 14px;
	border: 0;
	border-bottom: 1px solid #cfd4dc;
	overflow-x: auto;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs > li {
	float: none;
	margin: 0;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs > li > a {
	display: block;
	border: 1px solid #cfd4dc;
	border-bottom-color: #cfd4dc;
	border-radius: 7px 7px 0 0;
	background: #f5f7fa;
	color: #4d5562;
	padding: 7px 14px;
	white-space: nowrap;
	text-decoration: none !important;
	margin-bottom: -1px;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs > li > a:hover {
	background: #eef2f6;
	border-color: #b7c0cc;
	color: var(--KfsBlueDark);
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs > li:has(a.active) > a,
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs > li:has(a.active) > a:hover {
	background: #ffffff;
	border-color: var(--KfsBlueDark);
	border-bottom-color: #ffffff;
	color: var(--KfsBlueDark);
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .tab-content {
	border-top: 0;
	padding-top: 12px;
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs::before, 
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs::after {
	display: none;
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs.kfs-tabs-stacked {
	display: grid;
	grid-template-columns: 1fr;
	gap: 4px;
	border-bottom: 0;
	overflow: visible;
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs.kfs-tabs-stacked > li {
	width: 100%;
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs.kfs-tabs-stacked > li > a {
	border-radius: 4px;
	margin-bottom: 0;
	padding: 8px 12px;
	line-height: 1.25;
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs.kfs-tabs-stacked > li:has(a.active) > a,
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .nav-tabs.kfs-tabs-stacked > li:has(a.active) > a:hover {
	border-bottom-color: var(--KfsBlueDark);
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .control-group {
	background: rgba(255, 255, 255, 0.82);
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage .control-group:not(:has(.customerProfileNote)) {
	border: 1px solid rgba(37, 38, 56, 0.09);
	padding: 10px 12px;
	border-radius: 6px;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	margin: 0px;
	margin-top: -1px;
	margin-bottom: 10px;
	box-sizing: border-box;
}
.HdOrderLayer.HdOrderViewProfile .customerProfilePage #tickets .control-group {
	border: 0px;
	padding: 0px;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .control-group .control-label {
	width: 220px;
	min-width: 220px;
	color: var(--KfsBlueDark);
	font-weight: 600;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .control-group .controls {
	color: var(--KfsTextMain);
}

.HdOrderLayer.HdOrderViewProfile form.form-horizontal button.btn[type="submit"],
.HdOrderLayer.HdOrderViewProfile form.form-horizontal div.form-check {
	margin-left: 0;
}

.HdOrderLayer.HdOrderViewProfile .customerProfilePage .customerProfileNote {
	background: linear-gradient(90deg, rgba(53, 152, 200, 0.14) 0%, rgba(53, 152, 200, 0.03) 100%);
	border-left: 4px solid var(--KfsBlueLight);
	font-family: var(--KfsFontHeading);
	font-weight: 700;
	color: var(--KfsBlueDark);
	padding: 4px 8px;
	box-sizing: border-box;
}

.HdOrderLayer.HdOrderViewProfile .customerAddressLayer,
.HdOrderLayer.HdOrderViewProfile .customerBlockAddresses,
.HdOrderLayer.HdOrderViewProfile .selectBillAddressLayer,
.HdOrderLayer.HdOrderViewProfile .selectDeliveryAddressLayer,
.HdOrderLayer.HdOrderViewProfile .selectShippingAddressLayer {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
	gap: 8px;
	align-items: stretch;
	row-gap: 20px;
}

.HdOrderLayer.HdOrderViewProfile .customerAccountsLayer,
.HdOrderLayer.HdOrderViewProfile .customerBankDetailsLayer,
.HdOrderLayer.HdOrderViewProfile .customerBlockAccounts,
.HdOrderLayer.HdOrderViewProfile .customerBlockBankDetails {
	display: grid;
	grid-template-columns: repeat(2, minmax(220px, 1fr));
	gap: 10px;
}

.HdOrderLayer.HdOrderViewProfile .customerAddress,
.HdOrderLayer.HdOrderViewProfile .customerAccount,
.HdOrderLayer.HdOrderViewProfile .customerBankDetail {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	border: 1px solid rgba(37, 38, 56, 0.14);
	border-radius: 6px;
	background: #ffffff;
	padding: 8px 35px 8px 10px;
	min-height: 64px;
	line-height: 1.35;
	box-shadow: 0 2px 8px rgba(37, 38, 56, 0.05);
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	box-sizing: border-box;
	min-width: 0;
	margin-top: 0px;
}

.HdOrderLayer.HdOrderViewProfile .customerAddress:hover,
.HdOrderLayer.HdOrderViewProfile .customerAccount:hover,
.HdOrderLayer.HdOrderViewProfile .customerBankDetail:hover {
	border-color: rgba(53, 152, 200, 0.5);
	box-shadow: 0 4px 14px rgba(37, 38, 56, 0.12);
	transform: translateY(-1px);
}

.HdOrderLayer.HdOrderViewProfile .customerAddress .addressIconLayer, 
.HdOrderLayer.HdOrderViewProfile .customerAccount .addressIconLayer, 
.HdOrderLayer.HdOrderViewProfile .customerBankDetail .addressIconLayer {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 27px;
	right: 3px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	box-sizing: border-box;
}

.HdOrderLayer.HdOrderViewProfile .customerAddress .addressIconLayer > [class^="newicon-"],
.HdOrderLayer.HdOrderViewProfile .customerAddress .addressIconLayer > [class*=" newicon-"],
.HdOrderLayer.HdOrderViewProfile .customerAccount .addressIconLayer > [class^="newicon-"],
.HdOrderLayer.HdOrderViewProfile .customerAccount .addressIconLayer > [class*=" newicon-"],
.HdOrderLayer.HdOrderViewProfile .customerBankDetail .addressIconLayer > [class^="newicon-"],
.HdOrderLayer.HdOrderViewProfile .customerBankDetail .addressIconLayer > [class*=" newicon-"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	min-width: 24px;
	min-height: 24px;
	max-width: 24px;
	max-height: 24px;
	flex: 0 0 24px;
	box-sizing: border-box;
	margin: 0;
	padding-left: 0;
	line-height: 24px;
	border: 1px solid rgba(37, 38, 56, 0.28);
	border-radius: 4px;
	background: linear-gradient(180deg, #fefefe 0%, #edf2f7 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
	cursor: pointer;
}

.HdOrderLayer.HdOrderViewProfile .customerAddress .addressIconLayer > [class^="newicon-"]::before,
.HdOrderLayer.HdOrderViewProfile .customerAddress .addressIconLayer > [class*=" newicon-"]::before,
.HdOrderLayer.HdOrderViewProfile .customerAccount .addressIconLayer > [class^="newicon-"]::before,
.HdOrderLayer.HdOrderViewProfile .customerAccount .addressIconLayer > [class*=" newicon-"]::before,
.HdOrderLayer.HdOrderViewProfile .customerBankDetail .addressIconLayer > [class^="newicon-"]::before,
.HdOrderLayer.HdOrderViewProfile .customerBankDetail .addressIconLayer > [class*=" newicon-"]::before {
	position: static;
	display: block;
	line-height: 1;
	font-size: 13px;
}
.newicon-address-default-active::before {
	color: #ff8040 !important;
}
.HdOrderLayer.HdOrderViewProfile .customerAddress .addressSelectedHint {
	margin-top: 6px;
	font-size: 12px;
	color: rgba(37, 38, 56, 0.72);
}
.customerAddress.customerAddressSelected:not(.customerDeliveryAddressSelect) .addressSelectedHint {
	display: inline-block;
}

.HdOrderLayer.HdOrderViewProfile .customerAddress.customerAddressSelected {
	border-color: var(--KfsBlueDark);
	background: linear-gradient(180deg, rgba(37, 38, 56, 0.94) 0%, rgba(37, 38, 56, 0.86) 100%);
	color: var(--KfsTextWhite);
}

.HdOrderLayer.HdOrderViewProfile .customerAddress.customerAddressSelected .addressSelectedHint {
	color: rgba(255, 255, 247, 0.88);
}

.HdOrderLayer.HdOrderViewProfile .customerAddress {
	line-height: 1.25;
	font-size: 13px;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.HdOrderLayer.HdOrderViewProfile .customerAddress.customerAddressSelected .addressIconLayer,
.HdOrderLayer.HdOrderViewProfile .customerAccount.customerAddressSelected .addressIconLayer,
.HdOrderLayer.HdOrderViewProfile .customerBankDetail.customerAddressSelected .addressIconLayer {
	border-left-color: rgba(255, 255, 255, 0.28);
}

.HdOrderLayer.HdOrderViewProfile .customerAddress .addressSelectedHint {
	margin-top: 4px;
	font-size: 11px;
}

.HdOrderLayer.HdOrderViewProfile .customerAccount .accountInlineIcons,
.HdOrderLayer.HdOrderViewProfile .customerBankDetail .bankDetailInlineIcons {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 8px;
}

.HdOrderLayer.HdOrderViewProfile .orderTable {
	border: 1px solid rgba(37, 38, 56, 0.12);
	border-radius: var(--KfsRadius);
	padding: 12px;
	background: rgba(255, 255, 255, 0.9);
}

.HdOrderLayer.HdOrderViewProfile .orderTable .orderListSelectCheckbox {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 12px;
	font-size: 13px;
}

.HdOrderLayer.HdOrderViewProfile .orderTable .orderListItemContainer {
	border: 1px solid rgba(37, 38, 56, 0.12);
	border-radius: 6px;
	background: #ffffff;
	padding: 10px 12px;
	margin-bottom: 8px;
}

.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingNumber {
	font-weight: 700;
	color: var(--KfsBlueDark);
}

.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingInfo {
	margin-top: 4px;
	color: rgba(37, 38, 56, 0.82);
	font-size: 13px;
}

.HdOrderLayer.HdOrderViewProfile .HdOrderNextStepForm {
	margin-top: 16px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderListItemContainer.detailsOpen {
	border-color: rgba(53, 152, 200, 0.45);
	box-shadow: 0 5px 16px rgba(37, 38, 56, 0.10);
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails {
	display: none;
	flex-wrap: wrap;
	gap: 10px;
	width: 100%;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid rgba(37, 38, 56, 0.10);
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer {
	flex: 1 1 280px;
	min-width: 0;
	border: 1px solid rgba(37, 38, 56, 0.10);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.92);
	padding: 10px;
	box-sizing: border-box;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsHeading {
	margin: 0 0 8px;
	background: linear-gradient(90deg, rgba(53, 152, 200, 0.14) 0%, rgba(53, 152, 200, 0.03) 100%);
	border-left: 4px solid var(--KfsBlueLight);
	padding: 8px;
	box-sizing: border-box;
	font-family: var(--KfsFontHeading);
	color: var(--KfsBlueDark);
	font-weight: 700;
	font-size: 13px;
	line-height: 1.25;
	word-wrap: anywhere;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsRow {
	margin: 0;
	background: rgba(255, 255, 255, 0.72);
	border-radius: 4px;
	color: var(--KfsTextMain);
	font-size: 13px;
	line-height: 1.35;
	word-break: break-word;
}
.orderItemBookingDetails .detailsBasic div.detailsRow, 
.orderItemBookingDetails .detailsPayment div.detailsRow, 
.orderItemBookingDetails .detailsActions div.detailsRow, 
.orderItemBookingDetails .detailsBooked div.detailsRow, 
.orderItemBookingDetails .detailsDelivery div.detailsRow, 
.orderItemBookingDetails .detailsReservationValid div.detailsRow, 
.orderItemBookingDetails .detailsReservationDay div.detailsRow {
	padding-left: 150px;
	position: relative;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer ul {
	margin: 0px;
	padding: 0px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer ul li {
	padding: 4px 8px;
	padding-left: 0px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer ul > li > ul {
	margin-left: 15px;
	margin-bottom: 5px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsRow + .detailsRow {
	margin-top: 5px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsRow > span:first-child {
	display: inline-block;
	min-width: 138px;
	margin-right: 8px;
	color: rgba(37, 38, 56, 0.76);
	font-weight: 400;
}
.orderListItemInfo div.orderItemBookingNumber::before, 
.reservationListItemInfo div.orderItemBookingNumber::before {
	top: 1px;
}
.inlineIcons-EditItems::before {
	top: -2px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsRow a {
	color: var(--KfsBlueDark);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer.detailsActions .detailsRow font,
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer.detailsActions .detailsRow .joomlaSubmitButton,
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer.detailsActions .detailsRow .cancelOrder,
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer.detailsActions .detailsRow .cancelOrderAbort,
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer.detailsActions .detailsRow .offerAccept,
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer.detailsActions .detailsRow .offerDecline {
	display: inline-flex;
	align-items: center;
	padding: 3px 0;
	padding-top: 1px;
}
.detailsContainer.detailsActions .detailsRow:has(.inlineIcons-EditItems) {
	display: none;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer .orderNoticeField {
	width: 100%;
	min-height: 92px;
	border: 1px solid rgba(37, 38, 56, 0.28);
	border-radius: 6px;
	background: #ffffff;
	color: var(--KfsTextMain);
	padding: 8px 10px;
	box-sizing: border-box;
	resize: vertical;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer .saveOrderNotice,
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer .saveReservationNotice {
	min-width: 120px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer .state_box {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border-radius: 4px;
	padding: 4px 8px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer .state_box > span:first-child {
	color: #ffffff;
	min-width: auto;
	margin-right: 0;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer .detailsRow table#orderItemsList {
	font-size: 12px;
}
.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer .detailsRow table#orderItemsList td {
	padding-top: 6px;
	padding-bottom: 6px;
}

@media (max-width: 900px) {
	.HdOrderLayer.HdOrderViewProfile {
		padding: 14px;
	}
	.HdOrderLayer.HdOrderViewProfile .customerAccountsLayer,
	.HdOrderLayer.HdOrderViewProfile .customerBankDetailsLayer,
	.HdOrderLayer.HdOrderViewProfile .customerBlockAccounts,
	.HdOrderLayer.HdOrderViewProfile .customerBlockBankDetails {
		grid-template-columns: 1fr;
	}
	.HdOrderLayer.HdOrderViewProfile .customerProfilePage .control-group .control-label {
		width: 180px;
		min-width: 180px;
	}
	.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer {
		flex: 1 1 100%;
	}
}

@media (max-width: 640px) {
	.HdOrderLayer.HdOrderViewProfile {
		padding: 10px;
		border-radius: 6px;
	}
	.HdOrderLayer.HdOrderViewProfile .customerProfilePage {
		padding: 10px;
	}
	.HdOrderLayer.HdOrderViewProfile .customerProfilePage .control-group .control-label {
		width: 100%;
		min-width: 0;
		float: none;
		display: block;
		margin-bottom: 6px;
	}
	.HdOrderLayer.HdOrderViewProfile .customerProfilePage .control-group .controls {
		margin-left: 0;
	}
	.HdOrderLayer.HdOrderViewProfile .orderTable .orderListItemContainer {
		padding: 9px 10px;
	}
	.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails {
		gap: 8px;
		margin-top: 8px;
		padding-top: 8px;
	}
	.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsContainer {
		padding: 8px;
	}
	.orderItemBookingDetails .detailsBasic div.detailsRow, 
	.orderItemBookingDetails .detailsPayment div.detailsRow, 
	.orderItemBookingDetails .detailsActions div.detailsRow, 
	.orderItemBookingDetails .detailsBooked div.detailsRow, 
	.orderItemBookingDetails .detailsDelivery div.detailsRow, 
	.orderItemBookingDetails .detailsReservationValid div.detailsRow, 
	.orderItemBookingDetails .detailsReservationDay div.detailsRow {
		padding-left: 0px;
	}
	.HdOrderLayer.HdOrderViewProfile .orderTable .orderItemBookingDetails .detailsRow > span:first-child {
		display: block;
		min-width: 0;
		margin-right: 0;
		margin-bottom: 2px;
	}
}
.HdLoginOptions {
	margin-top: 20px;
}
.HdLoginOptions ul {
	margin: 0;
}
.HdLoginOptions ul li a {
	padding: 1px 0px;
}
.HdLoginOptions ul li:before {
	color: var(--VzForestDeep, var(--KfsBlueDark));
	top: 1px;
}

#user-registration fieldset,
form.com-users-reset-complete__form fieldset,
form.com-users-reset-confirm__form fieldset {
	border: 0 !important;
	padding: 0 !important;
	margin: 0;
}
form#user-registration.form-horizontal .control-group .control-label,
form.com-users-reset-complete__form .control-group .control-label,
form.com-users-reset-confirm__form .control-group .control-label {
	width: 180px;
	min-width: 180px;
}
form#user-registration .com-users-reset__submit button.btn[type="submit"],
form.com-users-remind__form button.btn[type="submit"],
form.com-users-reset-complete__form button.btn[type="submit"],
form.com-users-reset-confirm__form button.btn[type="submit"] {
	margin-left: 182px;
	margin-top: 0;
}
form.com-users-reset-complete__form meter {
	display: none;
}

/* ============================================================
   FORTSCHRITTSBALKEN (Buchungsprozess)
   ============================================================ */

main .container:has(.hdOrderProgressBarTop) {
	padding-top: 0px;
}
/*.kfsContent:has(.hdOrderProgressBarTop) {
	padding-top: 88px;
}*/
.hdOrderProgressBarTop {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 3;
}
.cartFormPDF {
	font-size: 12px;
}
@media(max-width: 420px) {
	.HdOrderNextStepForm button.HdOrderDetails {
		width: 100%;
	}
}
div.hdOrderProgressBar {
	background: rgba(255, 255, 255, 0.88);
	border: 1px solid rgba(37, 38, 56, 0.12);
	border-radius: var(--KfsRadius);
	box-shadow: 0 2px 10px rgba(37, 38, 56, 0.08);
	padding: 8px 10px;
	box-sizing: border-box;
	margin-top: 10px;
	margin-left: 10px;
	margin-right: 10px;
	width: -webkit-fill-available;	
	margin-bottom: 30px;
}
div.hdOrderProgressBar ul {
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	overflow-x: auto;
	scrollbar-width: thin;
}
div.hdOrderProgressBar ul li,
div.hdOrderProgressBar ul li:first-child {
	list-style: none;
	position: relative;
	padding: 8px 12px 8px 28px;
	border: 1px solid rgba(37, 38, 56, 0.18);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: 0 1px 4px rgba(37, 38, 56, 0.08);
	color: var(--KfsBlueDark);
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	line-height: 1.2;
	box-sizing: border-box;
}
div.hdOrderProgressBar ul li::before {
	content: "";
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--KfsBlueLight);
	box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.55);
}
div.hdOrderProgressBar ul li.active {
	background: linear-gradient(180deg, #2e4a6d 0%, var(--KfsBlueDark) 100%);
	color: var(--KfsTextWhite);
	border-color: var(--KfsBlueDark);
	box-shadow: 0 3px 10px rgba(37, 38, 56, 0.18);
}
div.hdOrderProgressBar ul li.active a {
	color: var(--KfsTextWhite);
}
div.hdOrderProgressBar ul li.active::before {
	background: #ffffff;
	box-shadow: inset 0 0 0 2px rgba(37, 38, 56, 0.35);
}
div.hdOrderProgressBar ul li.stepDisabled {
	opacity: 0.55;
	background: rgba(246, 247, 250, 0.95);
	color: #666666;
}
div.hdOrderProgressBar ul li:not(.stepDisabled):not(.active):hover {
	background: rgba(53, 152, 200, 0.12);
	border-color: rgba(53, 152, 200, 0.45);
}
@media (max-width: 900px) {
	/*.kfsContent:has(.hdOrderProgressBarTop) {
		padding-top: 95px;
	}*/
	div.hdOrderProgressBar ul li,
	div.hdOrderProgressBar ul li:first-child {
		font-size: 12px;
		padding: 7px 10px 7px 25px;
	}
	div.hdOrderProgressBar ul li::before {
		left: 9px;
		width: 9px;
		height: 9px;
	}
}
@media (max-width: 630px) {
	/*.kfsContent:has(.hdOrderProgressBarTop) {
		padding-top: 132px;
		overflow: hidden;
	}*/
	div.hdOrderProgressBar {
		padding: 8px;
		margin-left: 0px;
    	margin-right: 0px;
	}
	div.hdOrderProgressBar ul {
		display: grid;
		grid-template-columns: 1fr;
		gap: 6px;
		overflow: visible;
	}
	div.hdOrderProgressBar ul li {
		display: block;
		width: 100%;
		white-space: normal;
	}
}

.input-group [type="text"] {
	flex: 1;
	min-width: 0;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
	margin-bottom: 0 !important;
}
.field-calendar .input-group button.btn:last-child {
	margin-left: -1px !important;
	margin-top: 0 !important;
}
.emailSaveHint {
	display: inline-block;
	margin: 0;
	padding: 0;
	padding-left: 20px;
}
.HdOrderBookingStepTitle {
	display: none;
}
.HdOrderBookingStepDescription,
.HdOrderBookingStepDescriptionHeader {
	font-size: inherit;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderBookingStepLayer.standalonePage {
	background: #ffffff;
	border: 1px solid rgba(37, 38, 56, 0.14);
	box-shadow: 0 8px 24px rgba(37, 38, 56, 0.10);
	border-radius: 10px;
	padding: 24px;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderBookingStepDescriptionHeader {
	font-weight: 700;
	color: var(--KfsBlueDark);
	text-decoration: none;
	margin: 0 0 8px;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderBookingStepDescription {
	color: #4d5562;
	margin: 0 0 18px;
	line-height: 1.4;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderBookingStepItemContainer {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 14px;
	margin: 0 0 18px;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderBookingStepItemContainer .spacer {
	display: none;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTile {
	float: none;
	width: 100%;
	height: auto;
	min-height: 150px;
	margin: 0;
	padding: 14px 14px 12px;
	border: 1px solid rgba(37, 38, 56, 0.18);
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(37, 38, 56, 0.07);
	font-size: 15px;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 8px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	box-sizing: border-box;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTile:hover {
	border-color: rgba(53, 152, 200, 0.62);
	box-shadow: 0 7px 18px rgba(37, 38, 56, 0.14);
	transform: translateY(-1px);
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTile.tileIsSelected {
	border-color: var(--KfsBlueDark);
	background: rgba(53, 152, 200, 0.06);
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTileIcon {
	margin: 0;
	height: auto;
	display: flex;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTileIcon img,
.HdOrderLayer.HdOrderPaymentPage .HdOrderTile img.paymentImage {
	position: static;
	width: auto;
	height: 50px;
	max-width: 120px;
	max-height: 50px;
	border: 0px;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTileTitle {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--KfsBlueDark);
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTile:has(.HdOrderTileIcon) .HdOrderTileTitle {
	display: none;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTileDescription {
	font-size: 13px;
	line-height: 1.35;
	color: #4d5562;
	margin: 0;
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTilePrice {
	position: static;
	left: auto;
	bottom: auto;
	margin-top: auto;
	font-size: 15px;
	font-weight: 700;
	color: var(--KfsBlueDark);
}
.HdOrderLayer.HdOrderPaymentPage .HdOrderTilePrice span {
	display: block;
	margin-top: 1px;
	font-size: 11px;
	font-weight: 400;
}
.HdOrderLayer.HdOrderPaymentPage .buttonLayer {
	margin: 6px 0 0;
	text-align: left;
}
.HdOrderLayer.HdOrderPaymentPage .tileIsSelected .HdOrderTileIconSelected {
	top: 8px;
	right: 8px;
	width: 24px;
	height: 24px;
}
.HdOrderLayer.HdOrderPaymentPage .changePaymentLink {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-weight: 600;
}
.HdOrderPaymentStart {
	display: grid;
	grid-template-columns: minmax(0, auto) 1fr;
	align-items: center;
	gap: 10px;
	font-size: 1rem;
	padding: 12px 14px;
	border: 1px solid rgba(37, 38, 56, 0.12);
	border-radius: 8px;
	background: rgba(53, 152, 200, 0.06);
}
.HdOrderPaymentStart img.paymentImage {
	position: static;
	height: 32px;
	max-width: 120px;
}
.HdOrderPaymentStart a:nth-child(2) {
	padding-top: 0;
	font-weight: 600;
}
@media (max-width: 640px) {
	.HdOrderLayer.HdOrderPaymentPage .HdOrderBookingStepLayer.standalonePage {
		padding: 14px 12px;
	}
	.HdOrderLayer.HdOrderPaymentPage .HdOrderBookingStepItemContainer {
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.HdOrderLayer.HdOrderPaymentPage .HdOrderTile {
		min-height: 0;
	}
}

/* ============================================================
   WARENKORB / BESTELLÜBERSICHT
   ============================================================ */

.customerAddressSelected {
	background-color: var(--VzForestDeep, var(--KfsBlueDark));
}
.customerAddress.customerAddressSelected:hover {
	background-color: var(--VzForestDark, var(--KfsBlueLight));
}

.formatCartInfo {
	padding-left: 175px;
}
.cart_coupon {
	display: none;
}
.HdShopCart .cart_coupon {
	display: block;
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}
.HdOrderViewCartContent #orderItemsList {
	margin-bottom: 30px;
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: rgba(255, 255, 255, 0.88);
	border: 1px solid rgba(37, 38, 56, 0.12);
	border-radius: var(--KfsRadius);
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(37, 38, 56, 0.07);
}

.HdOrderViewCartContent #orderItemsList thead th {
	background: linear-gradient(180deg, #f7f9fc 0%, #edf1f7 100%);
	color: var(--KfsBlueDark);
	font-family: var(--KfsFontHeading);
	font-weight: 700;
	letter-spacing: 0.02em;
	border-bottom: 1px solid rgba(37, 38, 56, 0.14);
	padding: 10px 12px;
	white-space: nowrap;
}

.HdOrderViewCartContent #orderItemsList tbody td {
	padding: 10px 12px;
	vertical-align: middle;
	border-bottom: 1px solid rgba(37, 38, 56, 0.08);
}

.HdOrderViewCartContent #orderItemsList tbody tr[class^="itemLevel"]:nth-child(even) td {
	background-color: rgba(53, 152, 200, 0.05);
}

.HdOrderViewCartContent #orderItemsList tbody tr[class^="itemLevel"]:hover td {
	background-color: rgba(53, 152, 200, 0.10);
}

.HdOrderViewCartContent #orderItemsList tbody tr.orderSplitSum td,
.HdOrderViewCartContent #orderItemsList tbody tr.orderSum td {
	background: rgba(37, 38, 56, 0.08);
	font-weight: 700;
	border-top: 1px solid rgba(37, 38, 56, 0.16);
}

.HdOrderViewCartContent #orderItemsList tbody tr.orderSum td {
	background: rgba(37, 38, 56, 0.12);
}

.HdOrderViewCartContent #orderItemsList tbody tr td:first-child {
	font-weight: 600;
}

.HdOrderViewCartContent #orderItemsList tbody tr td:not(:first-child) {
	text-align: right;
}

.HdOrderViewCartContent #orderItemsList tbody tr td.countTd {
	text-align: center;
}

.HdOrderViewCartContent #orderItemsList tbody tr:last-child td {
	border-bottom: 0;
}

/* Warenkorbspalten bei kleiner Breite schrittweise ausblenden:
   1) EP netto
   2) Gesamtpreis netto
   3) Steuer */
/*.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] thead th:nth-child(8),
.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody td:nth-child(8) {
	display: none;
}

  @media (max-width: 1180px) {
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] thead th:nth-child(2),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody td:nth-child(2) {
		display: none;
	}
}

@media (max-width: 1020px) {
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] thead th:nth-child(5),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody td:nth-child(5) {
		display: none;
	}
}

@media (max-width: 900px) {
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] thead th:nth-child(4),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody td:nth-child(4),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] thead th:nth-child(6),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody td:nth-child(6) {
		display: none;
	}
}

@media (max-width: 575px) {
	.HdOrderViewCartContent {
		font-size: 14px;
	}
	.formatCartInfo {
		padding-left: 0;
	}
	.formatCartInfo span {
		position: relative;
		display: block;
	}
}*/
@media (max-width: 500px) {
	.HdOrderViewCartContent #orderItemsList td .removeOrderItem,
	.HdOrderViewCartContent #orderItemsList td .refundOrderItem,
	.HdOrderViewCartContent #orderItemsList td [class^="newicon-"],
	.HdOrderViewCartContent #orderItemsList td [class*=" newicon-"],
	.HdOrderViewCartContent #orderItemsList td.levelTd > span.fa {
		display: none !important;
	}

	.HdOrderViewCartContent #orderItemsList td.hdEditItemCount select.kfs-mobile-count-select,
	.HdOrderViewCartContent #orderItemsList td.hdEditItemCount select.HdLibMobileNumberField.addPriceBoxItemToCartCount {
		display: block;
		width: 72px;
		min-width: 72px;
		max-width: 72px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		background-color: #ffffff;
		color: var(--KfsBlueDark);
		/*border: 1px solid rgba(37, 38, 56, 0.25);*/
		padding: 4px 8px;
	}
}
@media (max-width: 340px) {
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] {
		font-size: 12px;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] thead {
		display: none;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr[class^="itemLevel"] {
		display: grid;
		grid-template-columns: 1fr 90px;
		grid-template-areas:
			"title title"
			"count price";
		gap: 6px 10px;
		padding: 8px 0;
		border-bottom: 1px solid rgba(37, 38, 56, 0.12);
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr[class^="itemLevel"] td {
		display: block;
		padding: 0;
		border: 0;
		white-space: normal;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr[class^="itemLevel"] td:nth-child(1) {
		grid-area: title;
		line-height: 1.3;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr[class^="itemLevel"] td:nth-child(3) {
		grid-area: count;
		text-align: left;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr[class^="itemLevel"] td:nth-child(7) {
		grid-area: price;
		text-align: right;
		font-weight: 700;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr[class^="itemLevel"] td:not(:nth-child(1)):not(:nth-child(3)):not(:nth-child(7)) {
		display: none !important;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSplitSum,
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSum {
		display: grid;
		grid-template-columns: 1fr auto;
		gap: 8px;
		align-items: center;
		padding: 8px 0;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSplitSum td,
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSum td {
		display: none;
		padding: 0;
		border: 0;
	}

	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSplitSum td:nth-child(1),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSplitSum td:nth-child(7),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSum td:nth-child(1),
	.HdOrderViewCartContent #orderItemsList[data-template="cartFull"] tbody tr.orderSum td:nth-child(7) {
		display: block;
	}

	.HdOrderViewCartContent #orderItemsList td.hdEditItemCount select.kfs-mobile-count-select,
	.HdOrderViewCartContent #orderItemsList td.hdEditItemCount select.HdLibMobileNumberField.addPriceBoxItemToCartCount {
		width: 64px;
		min-width: 64px;
		max-width: 64px;
		margin-left: 0;
		margin-right: 0;
	}
}
.HdOrderLayer .cart_coupon,
.HdOrderLayer .cartFormPDF {
	padding-bottom: 20px;
}
.HdOrderLayer .resetCartButton {
	margin-left: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	padding: 8px 14px;
	border: 1px solid #b73a3a;
	border-radius: 4px;
	background: #c74444;
	color: #ffffff !important;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.HdOrderLayer .resetCartButton .newicon-delete::before {
	content: none;
}
.HdOrderLayer .resetCartButton [class^="newicon-"],
.HdOrderLayer .resetCartButton [class*=" newicon-"],
.HdOrderLayer .resetCartButton .fa {
	display: none !important;
}
.HdOrderLayer .resetCartButton:hover,
.HdOrderLayer .resetCartButton:focus-visible {
	background: #a93232;
	border-color: #8f2a2a;
	color: #ffffff !important;
	box-shadow: 0 0 0 3px rgba(183, 58, 58, 0.2);
}
.HdOrderLayer .resetCartButton:active {
	background: #922a2a;
	border-color: #7f2424;
}
.HdOrderTileBox .contentTileFooter {
	padding: 0 10px;
}
.HdOrderTileBox .contentTileFooter button.HdOrderDetails {
	width: 100%;
	box-sizing: border-box;
}
.HdOrderTileBox .imageBox div.priceBoxBase {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
}
.HdOrderTileBox .imageBox div.priceBoxBase .tileIcons {
	height: initial !important;
	grid-gap: 5px;
	padding-right: 10px;
}
.HdOrderTileBox .imageBox div.priceBoxBase .tileIcons .newicon-cart-success {
	padding: 6px;
	padding-bottom: 4px;
}
.HdOrderTileBox .imageBox div.priceBoxBase .tileIcons .newicon-cart-success::before {
	color: #fff;
	position: relative;
}
.HdOrderTileBox .imageBox div.priceBoxBase .tileIcons .fa-remove {
	padding: 6px;
	padding-top: 8px;
}
#orderItemsList ul.ticketSelections {
	padding-left: 27px;
	margin-top: 5px;
}
#orderItemsList td ul.ticketSelections:first-of-type {
	margin-top: 8px;
}
.tileIsSelected .HdOrderTileIconSelected {
	background-image: url(../images/checked_circle_color.png);
}
.tileIsSelected .HdOrderTileIconDelete {
	background-image: url(../images/delete_grey.png);
}
.hdChangeDonation {
	display: none !important;
}
.tilesAddDonation {
	overflow: hidden !important;
}
.tilesAddDonation .HdOrderTileIcon {
	height: 105px;
}
.tilesAddDonation .HdOrderTileIcon img {
	width: 100%;
	height: auto;
	position: absolute;
	left: 0;
	right: 0;
	top: -50px;
}
.tilesAddDonation.tileIsSelected .HdOrderTileIconDelete {
	filter: brightness(0) saturate(100%) invert(18%) sepia(94%) saturate(7493%) hue-rotate(358deg) brightness(96%) contrast(119%);
}

/* ============================================================
   MITGLIEDSCHAFTEN
   ============================================================ */

.membershipsContainer .orderListItemInfo .orderItemBookingInfoElement,
.membershipsContainer .membershipItemLayer .membershipItemRow {
	margin-bottom: 5px;
}
.membershipsContainer .membershipItemLayer .membershipItemRow.memberName {
	background-color: var(--VzBgColor, rgba(37,38,56,0.06));
	padding: 5px 10px;
	margin-left: -10px;
	margin-top: -10px;
	margin-right: -10px;
	font-weight: bold;
}
.membershipItemLayer .membershipAction div {
	width: 380px;
	max-width: 100%;
	box-sizing: border-box;
}
@media(max-width: 930px) {
	.membershipItemLayer .membershipAction div {
		display: block;
		width: 100%;
	}
}
.orderListItemInfo div.orderItemBookingNumber {
	margin-bottom: 10px;
}
@media(max-width: 700px) {
	.membershipsContainer .membershipItemLayer .membershipItemRow {
		grid-template-columns: 150px auto;
	}
	.membershipsContainer .orderListItemInfo .orderItemBookingInfoElement {
		display: block;
		margin-bottom: 15px;
	}
	.membershipsContainer .orderListItemInfo .orderItemBookingInfoElement span {
		display: block;
		margin-bottom: 5px;
	}
	.membershipsContainer .orderListItemInfo .orderItemBookingInfoElement span:first-child {
		font-weight: bold;
	}
}
@media(max-width: 490px) {
	.membershipsContainer .membershipItemLayer .membershipItemRow {
		display: block;
		margin-bottom: 15px;
	}
	.membershipsContainer .membershipItemLayer .membershipItemRow span {
		display: block;
		margin-bottom: 5px;
	}
	.membershipsContainer .membershipItemLayer .membershipItemRow span:first-child {
		font-weight: bold;
	}
}

/* ============================================================
   SHOP / ARTIKELSEITE (com_hdseries)
   ============================================================ */

.item-content > .icons {
	display: none;
}
.HdShopArticlePage input[type="number"]:not(.numberStyled) {
	min-width: 60px;
}
.HdShopArticlePage.hasArticles {
	grid-template-columns: 50% auto;
	box-sizing: border-box;
}
@media (max-width: 1000px) {
	.HdShopArticlePage.hasArticles {
		display: block;
	}
	.HdShopArticlePage.hasArticles .HdOrderImages {
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
	.HdShopArticlePage .HdOrderArticleContent > p {
		margin-top: 20px !important;
		margin-bottom: 15px !important;
	}
	.HdShopArticlePage .HdOrderArticleOptionsLayer {
		justify-content: center;
	}
}
@media (max-width: 660px) {
	.HdShopArticlePage.hasArticles .HdOrderImages {
		width: 100%;
	}
	.HdShopArticlePage .HdOrderArticleOptionsLayer .articleOptionTile {
		width: 80%;
	}
}
@media (max-width: 500px) {
	.HdShopArticlePage .HdOrderArticleOptionsLayer .articleOptionTile {
		width: 100%;
	}
}

ul.nav-tabs {
	padding-left: 0;
}
.tab-content fieldset {
	border: 0 !important;
}

/* Tabs */
.HdShopFrontend .priceBoxBase.isInCart .tileIcons .priceBoxButton div {
	font-size: 13px;
	padding: 4px 8px;
	line-height: initial;
}
.HdShopFrontend .priceBoxBase.isInCart .tileIcons .priceBoxButton::before {
	top: 5px;
	left: 4px;
}
.HdShopFrontend .priceBoxBase.isInCart div.tileIcons span.fa-check-circle {
	left: 16px;
}
.HdShopFrontend .priceBoxBase.isInCart .tileIcons .priceBoxButton.itemInCartButton::before {
	top: 5px;
	color: var(--KfsTextWhite);
}
.HdShopFrontend .optionTileContent .priceBoxBase .tileIcons {
	margin-top: 15px;
}
.HdShopFrontend .priceBoxBase .tileIcons .addPriceBoxItemToCart.fa-cart-shopping::before {
	color: var(--VzForestDeep, var(--KfsBlueLight));
}

/* ============================================================
   GLOBALE BUTTONS
   ============================================================ */

button:not(.menu-toggle),
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn,
.btn-primary,
a.btn,
.priceBoxButton,
.membershipItemLayer .membershipAction div {
	border-radius: 4px !important;
	text-align: center;
}

button:not(.menu-toggle),
.btn,
.btn-primary,
a.btn,
.priceBoxButton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.priceBoxButton div {
	width: 100%;
	text-align: center;
}
.HdOrderViewCartContent .formatCartInfo {
	font-size: 14px !important;
}
@media(max-width: 450px) {
	.HdOrderViewCartContent .formatCartInfo {
		padding-left: 0px;
		margin-bottom: 10px;
	}
	.HdOrderViewCartContent .formatCartInfo span {
		display: block;
		position: relative;
		margin-bottom: 5px;
	}
}
