/** Shopify CDN: Minification failed

Line 136:0 Unexpected "}"

**/
.previewCart {
	padding: var(--grid-gap);
}

.previewCartList-wrapper {
    overflow: hidden;
}

.previewCartList  {
    overflow-y: auto;
}

.previewCart,
.previewCartList-wrapper,
.previewCartList  {
    max-height: calc(100vh - 22.3rem);
}


.previewCartItem {
	position: relative;
	display: grid;
	justify-content: space-between;
	gap: var(--grid-gap);
	grid-template-columns: 1fr 2.6fr;
}

.previewCartItem-image {
	display: inline-block;
	vertical-align: top;
	position: relative;
	text-align: center;
	position: relative;
	background-color: var(--color-bg-white);
}

.previewCartItem-image img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	background: var(--color-bg-white);
}

.previewCartItem-image:before {
	content: "";
	display: block;
	height: 0;
	width: 100%;
	padding-bottom: 107px;
}

.previewCartItem-content {
	display: grid;
    grid-template-columns: 4fr 1fr;
	background: var(--color-bg-white);
}

.previewCartItem-content-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.previewCartItem-name {
	overflow: hidden;
	white-space: normal;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	margin: 0 0 .3em 0;
    padding: 0 .5em;
}

.previewCartItem-vendor {
	display: block;
}

.previewCartItem-options {
	display: none;
	vertical-align: top;
	position: relative;
}

.previewCartItem-variant {
	display: block;
}

.previewCartItem-edit {
	display: inline-block;
	vertical-align: top;
	position: absolute;
	top: 50%;
	right: -2px;
	transform: translateY(-50%);
	background: none;
	border: none;
}

.previewCartItem-edit .icon {
	width: 18px;
	height: 16px;
	fill: var(--color-text2);
	position: relative;
	top: -2px;
}

.previewCartItem-price .price {
	display: block;
}

.previewCartItem-qty {
    display: flex;
    flex-direction: column;
    vertical-align: middle;
    position: relative;
    background: var(--color-bg-black);
    color: var(--color-text-white);
    height: 100%;
    width: 100%;
}
}

.previewCartItem-qty .quantity {
	width: 2em;
	text-align: center;
	border: 0;
}

.previewCartItem-qty input {
	text-align: center;
	padding: 0;
}
.previewCartItem-qty input::-webkit-outer-spin-button,
.previewCartItem-qty input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
	display: none;
}

.previewCartItem-qty input[type="number"] {
	-moz-appearance: textfield;
    background: transparent;
    border: 0;
    color: var(--color-text-white);
}

.previewCartItem-qty .btn-quantity {
	display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    width: 100%;
    height: 2.5rem;
	background: none;
	border: none;
    font-size: 125%;
    color: var(--color-text-white);
}

.previewCartItem-qty .btn-quantity:before {
    position: relative;
	content: "-";
    top:-.5em;
	/* position: absolute;
	width: 10px;
	height: 1px;
	left: 18px;
	top: -2px; */
}

.previewCartItem-qty .btn-quantity.plus:before {
    top: .1em;
    content: "+";
}

/* .previewCartItem-qty .btn-quantity.plus:after {
	content: "";
	position: absolute;
	width: 10px;
	height: 1px;
	left: 18px;
	top: 22px;
	background: #fff;
	transform: rotate(90deg);
} */

.previewCartItem-remove {
	position: absolute;
	right: 0;
	bottom: 36px;
	background: none;
	border: none;
}

.previewCartItem-remove svg {
	fill: var(--icon);
	width: 18px;
	height: 18px;
}

.previewCartItem:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.previewCart-emptyBody .empty {
	margin: 0 0 22px 0;
}

.previewCartCollection {
	padding: 20px 0px 7px 0px;
	position: relative;
	border-top: 1px solid var(--cart-item-border);
}

.previewCartTitle {
	position: relative;
	margin: 0 0 22px 0;
}

.previewCartCollection .product-item-custom .card-title {
	margin-bottom: 7px;
}

.previewCartCollection .card-swatch {
	text-align: left;
	justify-content: flex-start !important;
	margin-bottom: 14px;
}

.previewCartCollection .product-card-layout-02 .card {
	border: none;
}

.previewCartCarousel .product {
	display: inline-block;
	vertical-align: top;
	width: 100%;
}

.previewCartCarousel .slick-arrow {
	padding: 6px;
	width: 35px;
	height: 35px;
	top: -35px;
}

.previewCartCarousel .slick-arrow.slick-prev {
	left: auto !important;
	right: 45px;
	transform: translateY(-50%) rotate(0);
}

.previewCartCarousel .slick-arrow.slick-next {
	right: 0px !important;
}

.previewCartCarousel .slick-arrow.slick-disabled {
	display: block !important;
}

.previewCartCarousel:not(.slick-initialized) {
	white-space: nowrap;
	overflow: hidden;
	font-size: 0;
	letter-spacing: 0;
}

.previewCartInfo {
	position: fixed;
    bottom: var(--wrap);
    width: 100%;
	padding: 0 var(--grid-gap);
}

@media (min-width: 1024px) {

    .previewCartItem-image {
        aspect-ratio: 1;
    }

    .previewCartItem {
        grid-template-columns: 1fr 2.95fr;
    }

    .previewCartInfo {
        bottom: 3rem;
    }

    .previewCartItem-qty .btn-quantity {
        height: 3.5rem;
    }

    .previewCartItem-qty .btn-quantity:before {
        top:-.4em;
    }

    .previewCartItem-qty .btn-quantity.plus:before {
        top: -.1em;
    }
}

.previewCartTotals {
	display: flex;
    justify-content: center;
    gap: .5em;
    background: var(--color-bg-white);
    padding: .72em;
    color: var(--color-text-lightGray-2);
}

.previewCartTotals-value {

    color: var(--color-bg-black);
}

.previewCartTotalsPrice {
	padding-top: 0;
}

.previewCartAction {
	margin: var(--wrap) 0 0 0;
}

.previewCartCheckbox input[type="checkbox"] + label {
	display: inline-block;
	vertical-align: top;
	width: auto;
	padding-left: 25px;
	text-transform: unset;
}

.previewCartCheckbox input[type="checkbox"] ~ button {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 5px;
	padding: 0;
	background: none;
	background-image: linear-gradient(transparent 97%, var(--color-text) 3%);
	background-repeat: repeat-x;
	background-position-y: -2px;
	border: none;
	letter-spacing: var(--body-letter-spacing);
	font-family: var(--font-body-family);
	font-weight: var(--font-weight-normal);
}


.previewCart .button-continue {
	width: auto;
}


.previewCartTool {
	padding: 10px 30px 12px 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.cartTool-item {
	width: 25%;
	text-align: center;
	padding: 16px 10px;
	background-color: var(--color-bg-white);
	cursor: pointer;
	pointer-events: auto;
}

.cartTool-item:hover {
	background-color: #f8f8f8;
}

.cartTool-item:first-child {
	border-left: 1px solid #e2e2e2;
}
.cartTool-item span {
	pointer-events: none;
}
.cartTool-item svg {
	width: 24px;
	height: 24px;
	color: #464646;
}

.cartTool-item.cart-tool-gift svg {
	width: 26px;
}

.cartTool-item.cart-tool-shipping svg {
	width: 32px;
}

/*body.cart-sidebar-show {
	overflow-y: hidden;
	height: 100%;
}*/

body.cart-sidebar-show .background-overlay {
	/* opacity: 1;
	pointer-events: all; */
    display: none;
}

.halo-cart-sidebar {
    z-index: 25;
    max-width: 42em;
}

body.cart-sidebar-show .halo-cart-sidebar {
	transform: translate3d(0, 0, 0);
	opacity: 1;
	visibility: visible;
}

.previewCart-wrapper {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	height: 100%;
}

.product-option {
	display: flex;
	flex-wrap: nowrap;
	margin: 0 0 10px;
}

.product-option .definitionList-key {
	float: none;
}

.product-option .definitionList-value {
	flex: 1;
	margin-left: 5px;
	text-overflow: ellipsis;
	overflow: hidden;
}

/* -------------------- */
.previewCart.active-tool:before {
	content: "";
	position: absolute;
	background-color: var(--color-bg-white);
	opacity: 0.7;
	height: 100%;
	width: 100%;
	top: 0;
	z-index: 1;
}

.popup-toolDown {
	border-top: 1px solid #e3e3e3;
	position: fixed;
	width: 100%;
	bottom: 0;
	background-color: var(--bg-white);
	padding: 30px;
	z-index: 9;
	transform: translate3d(0, 50%, 0);
	opacity: 0;
	visibility: hidden;
	transition: transform var(--duration-default) ease, visibility var(--duration-default) ease, opacity var(--duration-default) ease;
}

.popup-toolDown.show {
	transform: translate3d(0, 0, 0);
	opacity: 1;
	visibility: visible;
}

.popup-toolDown .cart__note {
	display: block;
}

.popup-toolDown label {
	margin-bottom: 7px;
	display: block;
}

.popup-toolDown label svg {
	width: 20px;
	height: 20px;
	margin-right: 9px;
	position: relative;
	top: -2px;
}

.popup-toolDown button {
	margin-top: 15px;
	margin-bottom: 10px;
}

.popup-toolDown #shipping-calculator h3 {
	font-size: 0;
}

.popup-toolDown #shipping-calculator-form-wrapper p {
	margin-bottom: 10px;
	margin-top: 0;
	display: block;
}

.popup-toolDown #shipping-calculator-form-wrapper p svg {
	width: 22px;
	height: 22px;
	margin-right: 9px;
	position: relative;
	top: -3px;
}

.template-cart .hidden-cart {
	display: none;
}

.discount-code-field p {
	margin-top: 0;
	margin-bottom: 14px;
	color: var(--color-text2);
}

#popup-tool-shipping .special-select,
#popup-tool-shipping .styled-input {
	margin-bottom: 10px;
}

#popup-tool-shipping {
	padding-bottom: 12px;
}

#popup-tool-gift {
	text-align: center;
	padding-bottom: 42px;
}

#popup-tool-gift svg {
	width: 26px;
	height: 26px;
	margin-bottom: 12px;
	color: #464646;
}

#shipping-calculator #wrapper-response {
	color: #8b714a;
	background-color: #fbf8e5;
	padding: 14px 20px 12px;
	margin-top: 15px;
}

#popup-tool-discount {
	padding-bottom: 36px;
}

.previewCart .previewCartProduct .product .card {
	display: flex;
	flex-direction: row;
}

.previewCart .previewCartProduct .product .card-product {
	flex: 0 0 33%;
}
.product-card-layout-02 .previewCart .previewCartProduct .card-information__wrapper {
	padding-top: 10px;
}
.previewCart .previewCartProduct .product .card-information .card-action__group {
	display: block !important;
}

.previewCart .previewCartProduct .product .card-information .card-action__group .card-action {
	position: static;
	opacity: 1;
	visibility: visible;
	transform: translate3d(0, 0, 0);
}

.halo-cart-sidebar .previewCartItem-price .previewCartItem-saving-price {
	display: flex;
	gap: var(--grid-gap);
}

.previewCartTotalsPrice .cart-total-savings {
	display: flex;
}

@media (min-width: 1024px) {
    .previewCart
    .previewCartList-wrapper,
    .previewCartList  {
        max-height: calc(100vh - 30.5rem);
    }

	.previewCart {
		/*height: calc(100vh - 450px);*/
		overflow-y: auto;
		overflow-x: hidden;
		flex-grow: 1;
        padding-top: 1em;
	}

	.popup-toolDown.show {
		transform: translateY(-15%) !important;
	}

	.previewCart {
		overflow-y: auto;
		overflow-x: hidden;
		flex-grow: 1;
		/*height: calc(100vh - 470px);*/
	}

	.previewCartCarousel .product-item .product-image svg {
		display: block;
	}

	.previewCartCarousel .product-item .product-image:before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 3;
		opacity: 0;
		visibility: hidden;
		background: rgba(0, 0, 0, 0.3);
		transition: var(--anchor-transition);
	}

	.previewCartCarousel .product-item .product-image:hover svg {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.previewCartCarousel .product-item .product-image:hover:before {
		opacity: 1;
		visibility: visible;
	}
}

/* ============================================================
   Seitenwarenkorb in drei Bereichen

   Vorher klebten Summe und Kasse-Button per position fixed am Bildschirm,
   waehrend nur die Artikelliste scrollte. Danach scrollte alles, und eine
   Sprungleiste holte den Kasse-Button heran. Beides hatte denselben Mangel:
   Entweder war die Kasse nicht erreichbar oder die Grafik nicht auffindbar.

   Jetzt drei klar getrennte Bereiche als Flex-Spalte:
     fest     Versandbalken (.previewCartMessage)
     scrollt  Artikel und EU-Grafik (.previewCart)
     fest     Summe, Kasse-Button, Gewaehrleistungshinweis (.previewCartInfo)

   Flex statt Prozenthoehen, weil das eigene Element cart-coupon-discount
   sonst keine feste Hoehe hat, auf die sich height 100% beziehen koennte.
   ============================================================ */
#halo-cart-sidebar .halo-sidebar-wrapper {
    display: flex;
    flex-direction: column;
}

#halo-cart-sidebar .previewCartMessage {
    flex: none;
}

#halo-cart-sidebar cart-coupon-discount,
#halo-cart-sidebar .previewCart-wrapper {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    overflow: hidden;
}

/* Der scrollende Mittelbereich. Die ID im Selektor uebertrifft die Regeln
   oben in dieser Datei inklusive der Desktop-Regel .previewCart { overflow-y:
   auto; max-height: calc(100vh - 30.5rem) } - ohne !important.

   Dezente Scrollleiste: Seit Dezember 2025 unterstuetzen alle aktuellen
   Browser scrollbar-width/-color (MDN). Die ::-webkit-Regeln greifen nur noch
   in aelteren Versionen. Auf iPhone/iPad und bei der macOS-Standardeinstellung
   zeigt das System die Leiste ohnehin nur waehrend des Scrollens - deshalb
   nennt der feste Fussbereich die Gewaehrleistung zusaetzlich im Klartext. */
#halo-cart-sidebar .previewCart {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

/* Die Leiste soll DAUERHAFT sichtbar sein, damit erkennbar ist, dass dieser
   Bereich scrollt. macOS und iOS blenden Scrollleisten von Haus aus nur
   waehrend des Scrollens ein. Eigene ::-webkit-scrollbar-Regeln schalten in
   Chrome und Safari auf eine klassische, stehende Leiste um.

   Wichtig: scrollbar-color darf dafuer NICHT gesetzt sein. Laut MDN ignorieren
   Browser die ::-webkit-scrollbar-Familie, sobald scrollbar-color einen
   anderen Wert als auto hat. Die moderne Schreibweise steht deshalb nur in der
   Ausweichregel weiter unten, fuer Browser ohne ::-webkit-scrollbar (Firefox).

   Auf dem iPhone bleibt es bei der Systemvorgabe: Dort laesst sich die Leiste
   nicht erzwingen. */
#halo-cart-sidebar .previewCart::-webkit-scrollbar {
    width: 6px;
}

#halo-cart-sidebar .previewCart::-webkit-scrollbar-track {
    background: transparent;
}

#halo-cart-sidebar .previewCart::-webkit-scrollbar-thumb {
    background-color: var(--color-text-darkGray3);
    border-radius: 3px;
}

#halo-cart-sidebar .previewCart:hover::-webkit-scrollbar-thumb {
    background-color: var(--color-text-darkGray);
}

@supports not selector(::-webkit-scrollbar) {
    #halo-cart-sidebar .previewCart {
        scrollbar-width: thin;
        scrollbar-color: var(--color-text-darkGray3) transparent;
    }

    #halo-cart-sidebar .previewCart:hover {
        scrollbar-color: var(--color-text-darkGray) transparent;
    }
}

/* Innere Begrenzungen aufheben, sonst entstuenden verschachtelte
   Scrollflaechen innerhalb des Mittelbereichs. */
#halo-cart-sidebar .previewCartList-wrapper,
#halo-cart-sidebar .previewCartList {
    max-height: none;
    overflow: visible;
}

/* Der feste Fussbereich. Nicht mehr am Bildschirm fixiert, sondern das untere
   Ende der Spalte - dadurch kann er die Artikel nicht mehr verdecken. */
/* KEINE eigene Hintergrundflaeche: Der Seitenwarenkorb ist durchgehend
   halbtransparent mit Weichzeichner (.halo-cart-sidebar in base.css). Ein
   weisser Block hier wuerde diesen Effekt unterbrechen. Die weisse Flaeche
   hinter der Summe kommt aus .previewCartTotals und bleibt. */
#halo-cart-sidebar .previewCartInfo {
    position: static;
    bottom: auto;
    flex: none;
    width: auto;
    padding: var(--grid-gap);
}

/* Hinweiszeile unter dem Kasse-Button */
#halo-cart-sidebar .previewCartLegal {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.2em 0.6em;
    margin: 0.9em 0 0;
    color: var(--color-text-darkGray);
}

#halo-cart-sidebar .previewCartLegal-icon {
    display: inline-flex;
    flex: none;
}

#halo-cart-sidebar .previewCartLegal-icon svg {
    width: 1.1em;
    height: 1.1em;
}

#halo-cart-sidebar .previewCartLegal-text {
    flex: 1 1 auto;
}

#halo-cart-sidebar .previewCartLegal-link {
    flex: none;
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    color: var(--color-text-black);
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

#halo-cart-sidebar .previewCartLegal-arrow {
    margin-left: 0.35em;
}

/* Kurzes Aufleuchten nach dem Sprung, damit erkennbar ist, wo man gelandet
   ist. Nur ein Rahmen, die amtliche Grafik selbst bleibt unangetastet. */
#halo-cart-sidebar .previewCartEuLabel {
    outline: 2px solid transparent;
    outline-offset: 4px;
    transition: outline-color 0.6s ease;
}

#halo-cart-sidebar .previewCartEuLabel:focus {
    outline-color: transparent;
}

#halo-cart-sidebar .previewCartEuLabel.is-angesprungen {
    outline-color: var(--color-text-darkGray3);
    transition: outline-color 0s;
}

@media (prefers-reduced-motion: reduce) {
    #halo-cart-sidebar .previewCartEuLabel {
        transition: none;
    }
}
