.elementor-1253 .elementor-element.elementor-element-4278888{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1253 .elementor-element.elementor-element-4278888:not(.elementor-motion-effects-element-type-background), .elementor-1253 .elementor-element.elementor-element-4278888 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F9FA;}.elementor-1253 .elementor-element.elementor-element-98e52be{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:8px;--margin-bottom:8px;--margin-left:8px;--margin-right:8px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1253 .elementor-element.elementor-element-98e52be:not(.elementor-motion-effects-element-type-background), .elementor-1253 .elementor-element.elementor-element-98e52be > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-surface_white );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1253 .elementor-element.elementor-element-f5d7b81{text-align:center;}.elementor-1253 .elementor-element.elementor-element-f5d7b81 img{width:244px;max-width:30%;height:50px;}.elementor-1253 .elementor-element.elementor-element-3ea56d8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1253 .elementor-element.elementor-element-3ea56d8:not(.elementor-motion-effects-element-type-background), .elementor-1253 .elementor-element.elementor-element-3ea56d8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-surface_white );}.elementor-1253 .elementor-element.elementor-element-2f96a0c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--border-radius:999px 999px 999px 999px;box-shadow:0px 12px 32px -8px rgba(18,18,18,0.18);--padding-top:6px;--padding-bottom:6px;--padding-left:28px;--padding-right:28px;}.elementor-1253 .elementor-element.elementor-element-2f96a0c:not(.elementor-motion-effects-element-type-background), .elementor-1253 .elementor-element.elementor-element-2f96a0c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-1253 .elementor-element.elementor-element-55c2b39 img{width:160px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1253 .elementor-element.elementor-element-862613e .elementor-menu-toggle{margin-left:auto;}.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu .elementor-item{font-family:"Inter", Sans-serif;font-size:14px;font-weight:500;}.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;padding-left:0px;padding-right:0px;padding-top:8px;padding-bottom:8px;}.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--main .elementor-item:hover,
					.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--main .elementor-item:focus{color:#FFFFFF;fill:#FFFFFF;}.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#FFFFFF;}.elementor-1253 .elementor-element.elementor-element-862613e{--e-nav-menu-horizontal-menu-item-margin:calc( 28px / 2 );}.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:28px;}.elementor-1253 .elementor-element.elementor-element-049d8f9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-1253 .elementor-element.elementor-element-c090368 .elementor-icon-wrapper{text-align:center;}.elementor-1253 .elementor-element.elementor-element-c090368 .elementor-icon{font-size:16px;}.elementor-1253 .elementor-element.elementor-element-c090368 .elementor-icon svg{height:16px;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1253 .elementor-element.elementor-element-c8347cc{--main-alignment:right;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);--view-cart-button-background-color:var( --e-global-color-primary );--view-cart-button-hover-background-color:var( --e-global-color-accent_moss_dark );--checkout-button-background-color:var( --e-global-color-primary );--checkout-button-hover-background-color:var( --e-global-color-accent_moss_dark );}.elementor-1253 .elementor-element.elementor-element-c8347cc .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-1253 .elementor-element.elementor-element-98e52be{--width:100%;}.elementor-1253 .elementor-element.elementor-element-2f96a0c{--width:auto%;}}@media(max-width:767px){.elementor-1253 .elementor-element.elementor-element-4278888{--padding-top:16px;--padding-bottom:12px;--padding-left:16px;--padding-right:16px;}.elementor-1253 .elementor-element.elementor-element-2f96a0c{--padding-top:10px;--padding-bottom:10px;--padding-left:16px;--padding-right:12px;}.elementor-1253 .elementor-element.elementor-element-55c2b39 img{width:1%;max-width:1%;height:1px;}.elementor-1253 .elementor-element.elementor-element-862613e{width:initial;max-width:initial;}.elementor-1253 .elementor-element.elementor-element-049d8f9{--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;}}/* Start custom CSS for nav-menu, class: .elementor-element-862613e */.elementor-1253 .elementor-element.elementor-element-862613e {
    width: 100%;
}

.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item,
.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item:hover,
.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item:focus,
.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active,
.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item.highlighted {
    background-color: transparent !important;
    color: #FFFFFF !important;
}

.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item {
    text-decoration: underline;
    text-decoration-color: transparent;
    text-decoration-thickness: 1px;
    text-underline-offset: 6px;
    transition: text-decoration-color 0.2s ease-in-out;
}

.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item:hover,
.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item:focus,
.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active,
.elementor-1253 .elementor-element.elementor-element-862613e .elementor-nav-menu--dropdown a.elementor-item.highlighted {
    text-decoration-color: rgba(255, 255, 255, 0.55);
}/* End custom CSS */
/* Start custom CSS for woocommerce-menu-cart, class: .elementor-element-c8347cc */.elementor-1253 .elementor-element.elementor-element-c8347cc .widget_shopping_cart a.button,
.elementor-1253 .elementor-element.elementor-element-c8347cc .widget_shopping_cart_content a.button,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__main a.button,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__container a.button,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__main a.wc-forward,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__container a.wc-forward {
    background-color: #121212 !important;
    color: #FFFFFF !important;
    border: 1px solid #121212 !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out !important;
}

.elementor-1253 .elementor-element.elementor-element-c8347cc .widget_shopping_cart a.button:hover,
.elementor-1253 .elementor-element.elementor-element-c8347cc .widget_shopping_cart_content a.button:hover,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__main a.button:hover,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__container a.button:hover,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__main a.wc-forward:hover,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__container a.wc-forward:hover,
.elementor-1253 .elementor-element.elementor-element-c8347cc .widget_shopping_cart a.button:focus,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__main a.button:focus,
.elementor-1253 .elementor-element.elementor-element-c8347cc .elementor-menu-cart__container a.button:focus {
    background-color: #2A2A2A !important;
    color: #FFFFFF !important;
    border-color: #2A2A2A !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-049d8f9 */.elementor-1253 .elementor-element.elementor-element-049d8f9 {
    width: 100px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2f96a0c */@media (max-width: 767px) {
    .elementor-1253 .elementor-element.elementor-element-2f96a0c {
        gap: 8px !important;
    }
    .elementor-1253 .elementor-element.elementor-element-2f96a0c > .elementor-element.elementor-widget-image {
        order: 1;
    }
    .elementor-1253 .elementor-element.elementor-element-2f96a0c > .elementor-element#site-header-utility {
        order: 2;
        width: auto !important;
        flex: 0 0 auto !important;
    }
    .elementor-1253 .elementor-element.elementor-element-2f96a0c > .elementor-element.elementor-widget-nav-menu {
        order: 3;
        width: auto !important;
        flex: 0 0 auto !important;
        margin-left: 4px;
    }
    .elementor-1253 .elementor-element.elementor-element-2f96a0c > .elementor-element.elementor-widget-nav-menu .elementor-nav-menu__toggle {
        padding: 8px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4278888 *//* 1. Zustand: Ganz oben (Normaler Header auf der Kassenseite) */
body.woocommerce-checkout #site-header {
    background-color: #F8F9FA !important;
}

/* 2. Zustand: Nach unten gescrollt (aktiviert durch Ihr Snippet) */
body.woocommerce-checkout #site-header.is-scrolled {
    background-color: #F8F9FA !important;
}

/* 3. Schließt die weißen Lücken/Ränder direkt im Header-Bereich */
body.woocommerce-checkout #site-header .elementor-container,
body.woocommerce-checkout #site-header .elementor-section {
    background-color: transparent !important; /* Macht die inneren Boxen transparent, damit die Hauptfarbe durchscheint */
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* ==========================================
   MOBIL: Das 30-40px weiße Band auf der Kasse entfernen
   ========================================== */
@media (max-width: 1024px) {
    /* Oft erzeugt WooCommerce oder Elementor ein Padding/Margin oben auf der Kassen-Inhaltsseite */
    body.woocommerce-checkout .site-main,
    body.woocommerce-checkout main#content,
    body.woocommerce-checkout .elementor-location-header + div {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    /* Färbt den absolut obersten Hintergrund (Body), falls der Header versetzt sitzt */
    body.woocommerce-checkout {
        background-color: #F8F9FA !important;
    }

    /* Falls das Band durch ein Admin-Bar-Inkompatibilität oder Theme-Abstandhalter kommt */
    body.woocommerce-checkout #page {
        margin-top: 0 !important;
        padding-top: 0 !important;
        background-color: #F8F9FA !important;
    }
}/* End custom CSS */
/* Start custom CSS *//* ===== GLOBAL HEADER — floating pill → fixed translucent bar on scroll ===== */
#site-header { position: relative; z-index: 999; background: transparent; overflow: visible !important; }
#site-header > .e-con-inner { overflow: visible !important; gap: 16px !important; }
#site-header a { text-decoration: none; }

#site-header-logo-row { padding: 8px 0 4px !important; overflow: hidden; max-height: 140px; opacity: 1; transition: max-height .4s cubic-bezier(.4,0,.2,1), opacity .25s ease, padding .4s ease; }

#site-header-pill-wrap { display: flex; justify-content: center; width: 100%; transition: padding .35s ease; }
#site-header.is-scrolled #site-header-pill-wrap { padding: 0; } /* KR 18.09.: war position:fixed + slide-down — zweiter Positionswechsel im selben Frame, Ursache des Sprungs */
@keyframes kr-slide-down { from { transform: translateY(-100%); } to { transform: translateY(0); } }
#site-header.is-scrolled::after { content: ""; display: block; height: 56px; }

#site-header-pill { display: inline-flex !important; flex-wrap: nowrap; width: 700px !important; max-width: 100%; align-items: center; gap: 28px !important; min-height: 48px; transition: max-width .5s cubic-bezier(.4,0,.2,1), border-radius .45s cubic-bezier(.4,0,.2,1), padding .35s ease, background-color .35s ease, box-shadow .35s ease; }

/* In-pill logo: hidden by default, visible & black when scrolled */
#site-header-pill-logo { display: none !important; }
#site-header-pill-logo .elementor-widget-container { display: inline-flex; align-items: center; }
#site-header.is-scrolled #site-header-pill-logo { display: inline-flex !important; align-items: center; }
#site-header.is-scrolled #site-header-pill-logo img { width: 110px !important; filter: none !important; }

/* Nav menu */
#site-header .elementor-nav-menu { align-items: center; }
#site-header .elementor-nav-menu > li { display: flex; align-items: center; }
#site-header .elementor-nav-menu > li > a { padding: 6px 0 !important; line-height: 1 !important; font-weight: 500 !important; color: #FFFFFF !important; opacity: .82; transition: opacity .2s ease, color .25s ease; border: 0 !important; display: inline-flex; align-items: center; }
#site-header .elementor-nav-menu > li > a:hover { opacity: 1; }
#site-header .elementor-nav-menu > li.current-menu-item > a,
#site-header .elementor-nav-menu > li.current-menu-ancestor > a { opacity: 1; }

/* Utility icons — account + cart */
#site-header-utility { align-items: center; align-self: center; }
#site-header-utility .elementor-widget { display: flex; align-items: center; }
#site-header-utility .elementor-icon { padding: 8px; border-radius: 999px; transition: background-color .2s ease, color .25s ease; display: inline-flex; align-items: center; justify-content: center; }
#site-header-utility a.elementor-icon:hover { background: rgba(255,255,255,0.1); }
#site-header-utility .elementor-icon,
#site-header-utility .elementor-icon i,
#site-header-utility .elementor-icon svg { color: #FFFFFF !important; fill: #FFFFFF !important; font-size: 16px; transition: color .25s ease, fill .25s ease; }

/* Cart toggle */
#site-header-utility .elementor-menu-cart__toggle .elementor-button-text { display: none; }
#site-header-utility .elementor-menu-cart__toggle .elementor-button { background: transparent !important; padding: 10px 14px !important; border: 0 !important; border-radius: 999px !important; display: inline-flex !important; align-items: center; position: relative; transition: background-color .2s ease; }
#site-header-utility .elementor-menu-cart__toggle .elementor-button:hover { background: rgba(255,255,255,0.1) !important; }
#site-header-utility .elementor-menu-cart__toggle .elementor-button-icon { position: relative; display: inline-flex; align-items: center; justify-content: center; }
#site-header-utility .elementor-menu-cart__toggle .elementor-button-icon i,
#site-header-utility .elementor-menu-cart__toggle .elementor-button-icon svg { color: #FFFFFF !important; fill: #FFFFFF !important; font-size: 18px !important; width: 18px !important; height: 18px !important; transition: color .25s ease, fill .25s ease; }

/* Cart quantity bubble — positioned clearly above-right, not overlapping */
#site-header-utility .elementor-menu-cart__toggle .elementor-button-icon-qty { position: absolute !important; background: #FFFFFF !important; color: #121212 !important; font-size: 10px !important; font-weight: 600 !important; min-width: 16px; height: 16px; line-height: 16px; padding: 0 4px; border-radius: 999px; top: -6px !important; right: -10px !important; left: auto !important; bottom: auto !important; transform: none !important; box-shadow: 0 0 0 2px #121212; }

/* ===== SCROLLED STATE ===== */
#site-header.is-scrolled #site-header-pill { background: rgba(255,255,255,0.72) !important; backdrop-filter: saturate(180%) blur(14px); -webkit-backdrop-filter: saturate(180%) blur(14px); border-bottom: 1px solid rgba(18,18,18,0.06); box-shadow: none !important; border-radius: 0 !important; width: 100% !important; max-width: 100% !important; padding: 10px 40px !important; justify-content: space-between !important; min-height: 56px; }
#site-header.is-scrolled .elementor-nav-menu > li > a { color: #121212 !important; opacity: .75; }
#site-header.is-scrolled .elementor-nav-menu > li > a:hover { opacity: 1; }
#site-header.is-scrolled .elementor-nav-menu > li.current-menu-item > a { opacity: 1; }
#site-header.is-scrolled #site-header-utility .elementor-icon,
#site-header.is-scrolled #site-header-utility .elementor-icon i,
#site-header.is-scrolled #site-header-utility .elementor-icon svg { color: #121212 !important; fill: #121212 !important; }
#site-header.is-scrolled #site-header-utility a.elementor-icon:hover { background: rgba(18,18,18,0.06); }
#site-header.is-scrolled #site-header-utility .elementor-menu-cart__toggle .elementor-button-icon i,
#site-header.is-scrolled #site-header-utility .elementor-menu-cart__toggle .elementor-button-icon svg { color: #121212 !important; fill: #121212 !important; }
#site-header.is-scrolled #site-header-utility .elementor-menu-cart__toggle .elementor-button:hover { background: rgba(18,18,18,0.06) !important; }
#site-header.is-scrolled #site-header-utility .elementor-menu-cart__toggle .elementor-button-icon-qty { background: #121212 !important; color: #FFFFFF !important; box-shadow: 0 0 0 2px rgba(255,255,255,0.85); }

/* ===== Mini-cart flyout ===== */
.elementor-menu-cart__container { padding: 28px !important; border-radius: 14px !important; border: 1px solid #E6E0D6 !important; box-shadow: 0 24px 60px -20px rgba(18,18,18,0.18) !important; background: #FFFFFF !important; min-width: 360px; font-family: 'Inter', sans-serif; z-index: 9999 !important; max-height: calc(100vh - 100px); overflow-y: auto !important; }
.elementor-menu-cart__container * { font-family: 'Inter', sans-serif; }
.elementor-menu-cart__products .product-name a { color: #121212 !important; font-weight: 500; font-size: 15px; }
.elementor-menu-cart__products .quantity { color: #5F5A52; font-size: 13px; }
.elementor-menu-cart__subtotal { padding: 16px 0; border-top: 1px solid #E6E0D6; border-bottom: 1px solid #E6E0D6; margin: 16px 0; font-size: 14px; color: #121212; }
.elementor-menu-cart__subtotal strong { font-weight: 500; }
.elementor-menu-cart__footer-buttons { display: flex; flex-direction: column; gap: 10px; }
.elementor-menu-cart__footer-buttons .elementor-button { border-radius: 999px !important; padding: 14px 24px !important; font-size: 14px !important; font-weight: 500 !important; letter-spacing: .3px; text-align: center; }
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-view-cart { background: #FFFFFF !important; color: #121212 !important; border: 1px solid #121212 !important; }
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout { background: #121212 !important; color: #FFFFFF !important; border: 1px solid #121212 !important; }
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout:hover { background: #5F6F5A !important; border-color: #5F6F5A !important; }
.elementor-menu-cart--empty .elementor-menu-cart__main { color: #5F5A52; font-size: 14px; text-align: center; padding: 16px 0; }

/* ===== Mobile ===== */
@media (max-width: 991px) {
  #site-header-pill-wrap { padding: 0 12px; }
  #site-header-pill { width: 700px !important; padding: 8px 12px 8px 20px !important; min-height: 48px; }
  #site-header-logo-row img { width: 274px !important; }
  #site-header .elementor-menu-toggle { color: #FFFFFF !important; background: transparent; padding: 6px; }
  #site-header.is-scrolled .elementor-menu-toggle { color: #121212 !important; }
  #site-header nav.elementor-nav-menu--dropdown { background: #FFFFFF !important; border-top: 1px solid #E6E0D6; padding: 16px 24px 24px !important; position: fixed; top: 72px; left: 12px; right: 12px; border-radius: 16px; box-shadow: 0 24px 60px -20px rgba(18,18,18,0.22); }
  #site-header nav.elementor-nav-menu--dropdown li a.elementor-item { padding: 14px 0 !important; font-size: 18px !important; font-weight: 500 !important; color: #121212 !important; opacity: 1 !important; border-bottom: 1px solid #EFE9E0; }
  #site-header nav.elementor-nav-menu--dropdown li:last-child a.elementor-item { border-bottom: 0; }
  #site-header.is-scrolled #site-header-pill { padding: 8px 16px 8px 20px !important; }
  #site-header.is-scrolled #site-header-pill-logo img { width: 90px !important; }
}
/* Enlarge sticky logo */
#site-header.is-scrolled #site-header-pill-logo img { width: 160px !important; max-width: 160px !important; height: auto !important; }
@media (max-width: 991px) {
  #site-header.is-scrolled #site-header-pill-logo img { width: 120px !important; max-width: 120px !important; }
}

/* ============================================
   OVERLAP MODE — header does not push content
   ============================================ */
#site-header {
    /* KR 18.09.: dauerhaft fixed. Vorher absolute, das beim Scrollen auf fixed sprang —
       absolute bezieht sich aufs Dokument, fixed aufs Fenster: 224px Versatz in einem Frame. */
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: transparent !important;
    z-index: 999;
}

/* Remove the 56px spacer — header must not occupy document flow */
#site-header.is-scrolled::after {
    content: none !important;
    display: none !important;
    height: 0 !important;
}

/* Scrolled state stays fixed (already defined earlier), just ensure no spacer jump */
/* KR 18.09.: entfernt — der Header ist jetzt durchgehend fixed, es gibt keinen Positionswechsel mehr. */

/* ============================================
   MOBILE (<= 991px) — no island, transparent bar
   Layout: logo left | (spacer) | account | cart | burger
   ============================================ */
@media (max-width: 767px) {

    /* Hide the centered top logo row entirely */
    #site-header-logo-row {
        display: none !important;
    }

    /* Pill wrapper: full width, no centering */
    #site-header-pill-wrap {
        width: 100% !important;
        justify-content: stretch !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Flatten the pill on mobile — no background, no radius, full width */
    #site-header-pill {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        background: transparent !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 16px 20px !important;
        min-height: 0 !important;
        align-items: center !important;
        gap: 8px !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    /* Logo visible on the left, at mobile size */
    #site-header-pill-logo {
        display: inline-flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        order: 1 !important;
        margin-right: auto !important;
    }
    #site-header-pill-logo img {
        width: 120px !important;
        max-width: 120px !important;
        height: auto !important;
    }

    /* Utility group (account + cart) sits between logo and burger */
    #site-header-utility {
        order: 2 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 14px !important;
        margin-left: 0 !important;
        margin-right: 8px !important;
    }

    /* Nav-menu widget wrapper holds the burger on the far right */
    #site-header-pill > .elementor-widget-nav-menu,
    #site-header-pill .elementor-widget-nav-menu {
        order: 3 !important;
        margin-left: 0 !important;
    }

    /* Hide the horizontal menu list on mobile — burger toggle only */
    #site-header-pill .elementor-nav-menu--main .elementor-nav-menu {
        display: none !important;
    }

    /* Burger toggle — dark on transparent bg (pages start with varying bg) */
    #site-header-pill .elementor-menu-toggle {
        color: #121212 !important;
        background: transparent !important;
        padding: 4px !important;
    }
    #site-header-pill .elementor-menu-toggle svg,
    #site-header-pill .elementor-menu-toggle i {
        fill: #121212 !important;
        color: #121212 !important;
    }

    /* Account + cart icons dark on mobile transparent bar */
    #site-header-utility .elementor-icon,
    #site-header-utility .elementor-icon i,
    #site-header-utility .elementor-icon svg,
    #site-header-utility .elementor-menu-cart__toggle a {
        color: #121212 !important;
        fill: #121212 !important;
    }

    /* Cart badge — dark ring on light bg */
    #site-header-utility .elementor-menu-cart__toggle .elementor-button-text,
    #site-header-utility .elementor-menu-cart__toggle .elementor-menu-cart__toggle-button-text {
        background: #121212 !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 2px rgba(255,255,255,0.9) !important;
    }

    /* In mobile scrolled state we still want a subtle background for legibility */
    #site-header.is-scrolled #site-header-pill {
        background: rgba(255,255,255,0.85) !important;
        backdrop-filter: saturate(180%) blur(14px) !important;
        -webkit-backdrop-filter: saturate(180%) blur(14px) !important;
    }

    /* Mobile dropdown panel when burger is open — full width under header */
    #site-header-pill .elementor-nav-menu--dropdown {
        background: rgba(255,255,255,0.98) !important;
        backdrop-filter: saturate(180%) blur(14px) !important;
        -webkit-backdrop-filter: saturate(180%) blur(14px) !important;
    }
    #site-header-pill .elementor-nav-menu--dropdown a {
        color: #121212 !important;
    }
}

/* Hide the desktop centered logo row once scrolled — prevents flicker/reappearance */
#site-header.is-scrolled #site-header-logo-row {
    /* KR 18.09.: war display:none + visibility:hidden — nicht animierbar, die Pille sprang dadurch 111px hoch.
       Der alte Kommentar nannte als Grund "prevents flicker"; das Flackern kam vom kaputten Schwellwert
       und ist mit dem neuen Scroll-Zustand (Snippet 21) weg. Jetzt echtes Einklappen = Ueberblendung. */
    max-height: 0 !important;
    opacity: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    pointer-events: none;
}

/* ============================================
   MOBILE FIX (<= 767px) — match new breakpoint
   Utility group stacked vertically on Elementor mobile default → force row
   Cart icon invisible → force dark color
   ============================================ */
@media (max-width: 767px) {

    #site-header-pill {
        flex-direction: row !important;
        align-items: center !important;
    }

    /* Utility container: Elementor switches to column on mobile — force row */
    #site-header-utility,
    #site-header-utility.e-con,
    #site-header-utility > .e-con-inner {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        width: auto !important;
        gap: 14px !important;
    }

    /* Cart icon — force dark on transparent mobile bg */
    #site-header-utility .elementor-menu-cart__toggle .elementor-button-icon i,
    #site-header-utility .elementor-menu-cart__toggle .elementor-button-icon svg,
    #site-header-utility .elementor-menu-cart__toggle .elementor-button,
    #site-header-utility .elementor-menu-cart__toggle a {
        color: #121212 !important;
        fill: #121212 !important;
    }

    /* Reduce cart button padding on mobile so it aligns with account icon */
    #site-header-utility .elementor-menu-cart__toggle .elementor-button {
        padding: 4px 6px !important;
    }

    /* Account icon — tighter padding on mobile */
    #site-header-utility .elementor-icon {
        padding: 4px !important;
    }

    /* Cart badge — reposition so it doesn't drop below icon */
    #site-header-utility .elementor-menu-cart__toggle .elementor-button-icon-qty {
        top: -4px !important;
        right: -6px !important;
        background: #121212 !important;
        color: #FFFFFF !important;
        box-shadow: 0 0 0 2px rgba(255,255,255,0.9) !important;
    }
}

/* Mobile layout fix: push utility + burger to the far right as a group */
@media (max-width: 767px) {

    /* Remove auto-margin from logo so it doesn't fight the layout */
    #site-header-pill-logo {
        margin-right: 0 !important;
    }

    /* Utility group gets the auto-margin — pushes itself + burger to the right */
    #site-header-utility {
        margin-left: auto !important;
        margin-right: 12px !important;
    }

    /* Nav-menu (burger) sits at the very end, flush right */
    #site-header-pill > .elementor-widget-nav-menu,
    #site-header-pill .elementor-widget-nav-menu {
        margin-left: 0 !important;
    }
}

/* ============================================
   Mini-cart flyout — full viewport height slide-in from right
   Previously constrained inside header, now overlays entire page
   ============================================ */
.elementor-menu-cart__container {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    height: 100vh !important;
    max-height: 100vh !important;
    width: 420px !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    border-left: 1px solid #E6E0D6 !important;
    box-shadow: -24px 0 60px -20px rgba(18,18,18,0.18) !important;
    overflow-y: auto !important;
    z-index: 10000 !important;
    padding: 32px !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Content area scrolls, footer buttons stick to bottom */
.elementor-menu-cart__main {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
}
.elementor-menu-cart__footer-buttons {
    flex: 0 0 auto !important;
    padding-top: 16px !important;
}

/* Ensure the cart toggle wrapper isn't clipping the fixed flyout */
.elementor-menu-cart__wrapper,
.elementor-menu-cart__toggle-wrapper {
    position: static !important;
}

@media (max-width: 767px) {
    .elementor-menu-cart__container {
        width: 100vw !important;
        padding: 24px !important;
    }
}

/* Remove the secondary white backdrop behind the mini-cart flyout */
.elementor-menu-cart__main-wrapper,
.elementor-menu-cart__wrapper,
.elementor-menu-cart__toggle-wrapper + .elementor-menu-cart__main-wrapper,
.elementor-menu-cart--shown .elementor-menu-cart__main-wrapper {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    width: auto !important;
    padding: 0 !important;
}

/* Kill ALL wrapper backdrops around the mini-cart */
.elementor-menu-cart__wrapper,
.elementor-menu-cart__toggle-wrapper,
.elementor-menu-cart__main-wrapper,
.elementor-menu-cart--shown,
.elementor-menu-cart--shown .elementor-menu-cart__wrapper,
.elementor-menu-cart--shown .elementor-menu-cart__main-wrapper,
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__wrapper,
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__main-wrapper,
body .elementor-menu-cart__wrapper,
body .elementor-menu-cart__main-wrapper {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* If the wrapper itself is a fixed side panel, strip it */
.elementor-menu-cart__main-wrapper {
    position: static !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ============================================
   Mini-cart — premium redesign matching site DS
   Palette: #121212 / #5F6F5A / #F6F3ED / #EFE9E0 / #E6E0D6 / #5F5A52
   ============================================ */

/* Panel shell */
.elementor-menu-cart__container {
    background: #F6F3ED !important;
    border-left: 1px solid #E6E0D6 !important;
    box-shadow: -40px 0 80px -30px rgba(18,18,18,0.22) !important;
    padding: 40px 32px !important;
    font-family: 'Inter', sans-serif !important;
    color: #121212 !important;
}
.elementor-menu-cart__container * {
    font-family: 'Inter', sans-serif !important;
}

/* Close button — minimal icon, top-right */
.elementor-menu-cart__close-button,
.elementor-menu-cart__close-button-wrapper {
    color: #121212 !important;
    opacity: .7;
    transition: opacity .2s ease;
    top: 20px !important;
    right: 24px !important;
}
.elementor-menu-cart__close-button:hover {
    opacity: 1;
}

/* Cart list — editorial spacing */
.elementor-menu-cart__products,
.elementor-menu-cart__main .cart_list,
.elementor-menu-cart__main ul.cart_list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-menu-cart__products li,
.elementor-menu-cart__main .cart_list li,
.elementor-menu-cart__main ul.cart_list li {
    display: grid !important;
    grid-template-columns: 72px 1fr auto !important;
    grid-gap: 16px !important;
    align-items: center !important;
    padding: 20px 0 !important;
    border-bottom: 1px solid #E6E0D6 !important;
    margin: 0 !important;
}
.elementor-menu-cart__products li:last-child,
.elementor-menu-cart__main .cart_list li:last-child {
    border-bottom: 0 !important;
}

/* Product thumb */
.elementor-menu-cart__products .product-image,
.elementor-menu-cart__main .cart_list li img {
    width: 72px !important;
    height: 72px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    border: 1px solid #E6E0D6 !important;
    margin: 0 !important;
    float: none !important;
    display: block !important;
}

/* Product name */
.elementor-menu-cart__products .product-name,
.elementor-menu-cart__main .cart_list li a:not(.remove) {
    color: #121212 !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    letter-spacing: -0.01em !important;
    text-decoration: none !important;
}
.elementor-menu-cart__products .product-name a,
.elementor-menu-cart__products a.product-name {
    color: #121212 !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    letter-spacing: -0.01em !important;
    text-decoration: none !important;
}

/* Quantity + price line */
.elementor-menu-cart__products .quantity,
.elementor-menu-cart__main .cart_list .quantity {
    color: #5F5A52 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    margin-top: 6px !important;
    display: block !important;
}

/* Remove (x) button */
.elementor-menu-cart__products .remove,
.elementor-menu-cart__main .cart_list .remove,
.elementor-menu-cart__container .remove_from_cart_button {
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    border: 1px solid #E6E0D6 !important;
    background: transparent !important;
    color: #5F5A52 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 12px !important;
    line-height: 1 !important;
    opacity: 1 !important;
    transition: all .2s ease !important;
}
.elementor-menu-cart__products .remove:hover,
.elementor-menu-cart__container .remove_from_cart_button:hover {
    background: #121212 !important;
    color: #FFFFFF !important;
    border-color: #121212 !important;
}

/* Subtotal row */
.elementor-menu-cart__subtotal,
.elementor-menu-cart__main .total {
    padding: 20px 0 !important;
    margin: 8px 0 24px !important;
    border-top: 1px solid #E6E0D6 !important;
    border-bottom: 0 !important;
    font-size: 14px !important;
    color: #5F5A52 !important;
    font-weight: 400 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
}
.elementor-menu-cart__subtotal strong,
.elementor-menu-cart__subtotal .amount,
.elementor-menu-cart__main .total .amount {
    color: #121212 !important;
    font-weight: 500 !important;
    font-size: 20px !important;
    letter-spacing: -0.02em !important;
    text-transform: none !important;
}

/* Footer buttons — pill, brand-matched */
.elementor-menu-cart__footer-buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 8px !important;
}
.elementor-menu-cart__footer-buttons .elementor-button {
    border-radius: 999px !important;
    padding: 16px 28px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    text-align: center !important;
    transition: all .25s ease !important;
    border: 1px solid transparent !important;
    line-height: 1.2 !important;
    text-transform: none !important;
}

/* View cart — outlined ghost */
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-view-cart {
    background: transparent !important;
    color: #121212 !important;
    border: 1px solid #121212 !important;
}
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-view-cart:hover {
    background: #121212 !important;
    color: #FFFFFF !important;
}

/* Checkout — filled dark, sage hover */
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout {
    background: #121212 !important;
    color: #FFFFFF !important;
    border: 1px solid #121212 !important;
}
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout:hover {
    background: #5F6F5A !important;
    border-color: #5F6F5A !important;
    color: #FFFFFF !important;
}

/* Empty state */
.elementor-menu-cart--empty .elementor-menu-cart__main,
.elementor-menu-cart__main .woocommerce-mini-cart__empty-message {
    color: #5F5A52 !important;
    font-size: 15px !important;
    text-align: center !important;
    padding: 48px 0 !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
}

/* Optional brand header inside cart — style any heading */
.elementor-menu-cart__main h2,
.elementor-menu-cart__main h3 {
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #5F5A52 !important;
    margin: 0 0 16px !important;
}

/* ============================================
   Correction: __container is the lightbox backdrop (must be invisible).
   __main is the actual cart panel (gets the styling).
   ============================================ */

/* OUTER container — transparent backdrop only, no visible box */
.elementor-menu-cart__container,
.elementor-menu-cart__container.elementor-lightbox {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    border-left: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    position: fixed !important;
    display: block !important;
    pointer-events: auto !important;
}

/* INNER panel — the actual visible cart */
.elementor-menu-cart__container .elementor-menu-cart__main {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: 420px !important;
    max-width: 100vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    background: #F6F3ED !important;
    border-left: 1px solid #E6E0D6 !important;
    box-shadow: -40px 0 80px -30px rgba(18,18,18,0.22) !important;
    padding: 40px 32px !important;
    overflow-y: auto !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 1 !important;
    font-family: 'Inter', sans-serif !important;
    color: #121212 !important;
}

/* Mobile: panel = full width */
@media (max-width: 767px) {
    .elementor-menu-cart__container .elementor-menu-cart__main {
        width: 100vw !important;
        padding: 24px !important;
    }
}

/* ============================================
   MINI-CART REFINEMENT — compact, purist, B/W-led
   Overrides previous beige/soft styling
   ============================================ */

/* Panel: tighter width, white-led, subtle hairline edge */
.elementor-menu-cart__container .elementor-menu-cart__main {
    width: 380px !important;
    padding: 24px 24px 20px !important;
    background: #FFFFFF !important;
    border-left: 1px solid rgba(18,18,18,0.08) !important;
    box-shadow: -24px 0 48px -24px rgba(18,18,18,0.18) !important;
    color: #121212 !important;
    gap: 0 !important;
}

@media (max-width: 767px) {
    .elementor-menu-cart__container .elementor-menu-cart__main {
        width: 100vw !important;
        padding: 20px 20px 16px !important;
    }
}

/* Close button — small, refined, hairline */
.elementor-menu-cart__close-button,
.elementor-menu-cart__close-button-wrapper {
    top: 16px !important;
    right: 16px !important;
    width: 24px !important;
    height: 24px !important;
    font-size: 14px !important;
    color: #121212 !important;
    opacity: .55 !important;
    transition: opacity .15s ease !important;
}
.elementor-menu-cart__close-button:hover {
    opacity: 1 !important;
}

/* Optional caption above products — small caps label */
.elementor-menu-cart__main h2,
.elementor-menu-cart__main h3 {
    font-size: 11px !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: rgba(18,18,18,0.55) !important;
    margin: 4px 0 16px !important;
    font-weight: 500 !important;
}

/* Product rows — tighter grid, smaller thumb */
.elementor-menu-cart__products li,
.elementor-menu-cart__main .cart_list li,
.elementor-menu-cart__main ul.cart_list li {
    grid-template-columns: 52px 1fr auto !important;
    grid-gap: 14px !important;
    padding: 14px 0 !important;
    border-bottom: 1px solid rgba(18,18,18,0.06) !important;
    align-items: center !important;
}
.elementor-menu-cart__products li:first-child,
.elementor-menu-cart__main .cart_list li:first-child {
    padding-top: 4px !important;
}

/* Thumb — smaller, square, hairline border */
.elementor-menu-cart__products .product-image,
.elementor-menu-cart__products .product-image img,
.elementor-menu-cart__main .cart_list li img {
    width: 52px !important;
    height: 52px !important;
    border-radius: 4px !important;
    border: 1px solid rgba(18,18,18,0.08) !important;
}

/* Product name — quieter, more compact */
.elementor-menu-cart__products .product-name,
.elementor-menu-cart__products .product-name a,
.elementor-menu-cart__products a.product-name {
    font-size: 13.5px !important;
    line-height: 1.3 !important;
    font-weight: 500 !important;
    color: #121212 !important;
    letter-spacing: -0.005em !important;
}

/* Quantity + price — single muted line under name */
.elementor-menu-cart__products .quantity,
.elementor-menu-cart__main .cart_list .quantity {
    font-size: 12px !important;
    color: rgba(18,18,18,0.55) !important;
    margin-top: 4px !important;
    font-variant-numeric: tabular-nums !important;
    letter-spacing: 0 !important;
}

/* Remove (x) — tiny, hairline, no chip */
.elementor-menu-cart__products .remove,
.elementor-menu-cart__container .remove_from_cart_button,
.elementor-menu-cart__products .elementor_remove_from_cart_button {
    width: 16px !important;
    height: 16px !important;
    border: 0 !important;
    background: transparent !important;
    color: rgba(18,18,18,0.4) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    opacity: 1 !important;
    transition: color .15s ease !important;
    border-radius: 0 !important;
}
.elementor-menu-cart__products .remove:hover,
.elementor-menu-cart__container .remove_from_cart_button:hover {
    background: transparent !important;
    color: #121212 !important;
    border: 0 !important;
}

/* Subtotal — clean inline row, no caps */
.elementor-menu-cart__subtotal,
.elementor-menu-cart__main .total {
    padding: 16px 0 !important;
    margin: 4px 0 16px !important;
    border-top: 1px solid rgba(18,18,18,0.1) !important;
    border-bottom: 0 !important;
    font-size: 13px !important;
    color: #121212 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 500 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
}
.elementor-menu-cart__subtotal strong {
    font-weight: 500 !important;
    color: #121212 !important;
    font-size: 13px !important;
}
.elementor-menu-cart__subtotal .amount,
.elementor-menu-cart__main .total .amount {
    font-size: 16px !important;
    font-weight: 600 !important;
    letter-spacing: -0.01em !important;
    text-transform: none !important;
    color: #121212 !important;
    font-variant-numeric: tabular-nums !important;
}

/* CTA hierarchy — primary checkout filled black, view-cart text-link */
.elementor-menu-cart__footer-buttons {
    display: flex !important;
    flex-direction: column-reverse !important;
    gap: 8px !important;
    margin-top: 0 !important;
    align-items: stretch !important;
}
.elementor-menu-cart__footer-buttons .elementor-button {
    border-radius: 4px !important;
    padding: 12px 20px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.2 !important;
    transition: background .15s ease, color .15s ease, border-color .15s ease !important;
}

/* Primary — Checkout (filled black, sits at bottom) */
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout {
    background: #121212 !important;
    color: #FFFFFF !important;
    border: 1px solid #121212 !important;
}
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout:hover {
    background: #000000 !important;
    border-color: #000000 !important;
}

/* Secondary — View cart (quiet text link, centered) */
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-view-cart {
    background: transparent !important;
    color: rgba(18,18,18,0.65) !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 8px 0 !important;
    font-size: 12px !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    text-decoration-thickness: 1px !important;
    text-decoration-color: rgba(18,18,18,0.25) !important;
    letter-spacing: 0.02em !important;
}
.elementor-menu-cart__footer-buttons .elementor-button.elementor-button-view-cart:hover {
    background: transparent !important;
    color: #121212 !important;
    text-decoration-color: #121212 !important;
}

/* Empty state — compact */
.elementor-menu-cart--empty .elementor-menu-cart__main,
.elementor-menu-cart__main .woocommerce-mini-cart__empty-message {
    color: rgba(18,18,18,0.55) !important;
    font-size: 13px !important;
    padding: 32px 0 !important;
    font-weight: 400 !important;
}
/* ============================================
   MINI-CART — FINAL POLISH PASS
   Compact · Purist B/W · Stronger CTA hierarchy
   ============================================ */

/* Panel — tighter width, tighter padding, stronger edge */
.elementor-menu-cart__container .elementor-menu-cart__main {
    width: 360px !important;
    max-width: 360px !important;
    padding: 20px 20px 16px !important;
    background: #FFFFFF !important;
    border-left: 1px solid rgba(18, 18, 18, 0.08) !important;
    box-shadow: -24px 0 48px -12px rgba(18, 18, 18, 0.14) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
}

@media (max-width: 767px) {
    .elementor-menu-cart__container .elementor-menu-cart__main {
        width: 100vw !important;
        max-width: 100vw !important;
        padding: 18px 18px 14px !important;
    }
}

/* Close button — smaller, quieter */
.elementor-menu-cart__container .elementor-menu-cart__close-button {
    top: 14px !important;
    right: 14px !important;
    width: 20px !important;
    height: 20px !important;
    opacity: 0.5 !important;
    transition: opacity 0.2s ease-in-out !important;
}
.elementor-menu-cart__container .elementor-menu-cart__close-button:hover {
    opacity: 1 !important;
}
.elementor-menu-cart__container .elementor-menu-cart__close-button i,
.elementor-menu-cart__container .elementor-menu-cart__close-button svg {
    font-size: 16px !important;
    width: 16px !important;
    height: 16px !important;
    color: #121212 !important;
    fill: #121212 !important;
}

/* Product list — tighter rows */
.elementor-menu-cart__container .elementor-menu-cart__products,
.elementor-menu-cart__container .woocommerce-mini-cart {
    margin: 8px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.elementor-menu-cart__container .woocommerce-mini-cart-item,
.elementor-menu-cart__container .mini_cart_item {
    display: grid !important;
    grid-template-columns: 44px 1fr auto !important;
    column-gap: 12px !important;
    align-items: center !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(18, 18, 18, 0.06) !important;
    background: transparent !important;
}

.elementor-menu-cart__container .woocommerce-mini-cart-item img,
.elementor-menu-cart__container .mini_cart_item img {
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    border-radius: 3px !important;
    object-fit: cover !important;
    background: #F6F3ED !important;
}

.elementor-menu-cart__container .woocommerce-mini-cart-item a:not(.remove) {
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    color: #121212 !important;
    text-decoration: none !important;
    display: block !important;
    padding: 0 !important;
}

.elementor-menu-cart__container .quantity,
.elementor-menu-cart__container .woocommerce-mini-cart-item .quantity {
    font-size: 11px !important;
    color: rgba(18, 18, 18, 0.55) !important;
    font-variant-numeric: tabular-nums !important;
    margin-top: 2px !important;
    display: block !important;
}

/* Remove (x) — tiny, minimal */
.elementor-menu-cart__container a.remove,
.elementor-menu-cart__container .remove_from_cart_button {
    position: static !important;
    width: 14px !important;
    height: 14px !important;
    line-height: 14px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: rgba(18, 18, 18, 0.35) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    text-align: center !important;
    transition: color 0.2s ease-in-out !important;
    align-self: center !important;
}
.elementor-menu-cart__container a.remove:hover,
.elementor-menu-cart__container .remove_from_cart_button:hover {
    color: #121212 !important;
    background: transparent !important;
}

/* Subtotal row — flat, compact */
.elementor-menu-cart__container .elementor-menu-cart__subtotal,
.elementor-menu-cart__container .woocommerce-mini-cart__total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    padding: 14px 0 12px !important;
    margin: 4px 0 0 !important;
    border-top: 1px solid rgba(18, 18, 18, 0.08) !important;
    border-bottom: 0 !important;
    font-size: 12px !important;
    color: rgba(18, 18, 18, 0.6) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
}
.elementor-menu-cart__container .elementor-menu-cart__subtotal strong,
.elementor-menu-cart__container .woocommerce-mini-cart__total strong {
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    font-size: 12px !important;
    color: rgba(18, 18, 18, 0.6) !important;
}
.elementor-menu-cart__container .elementor-menu-cart__subtotal .amount,
.elementor-menu-cart__container .woocommerce-mini-cart__total .amount {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #121212 !important;
    font-variant-numeric: tabular-nums !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Footer buttons — column-reverse; checkout primary, view-cart quiet link */
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
.elementor-menu-cart__container .woocommerce-mini-cart__buttons {
    display: flex !important;
    flex-direction: column-reverse !important;
    gap: 10px !important;
    padding: 4px 0 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button,
.elementor-menu-cart__container .woocommerce-mini-cart__buttons .button {
    width: 100% !important;
    margin: 0 !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    transition: all 0.2s ease-in-out !important;
}

/* Checkout — primary filled black */
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.checkout,
.elementor-menu-cart__container .woocommerce-mini-cart__buttons .checkout {
    background: #121212 !important;
    color: #FFFFFF !important;
    border: 1px solid #121212 !important;
    border-radius: 3px !important;
    padding: 12px 18px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.checkout:hover,
.elementor-menu-cart__container .woocommerce-mini-cart__buttons .checkout:hover {
    background: #000000 !important;
    border-color: #000000 !important;
    color: #FFFFFF !important;
}

/* View cart — quiet text link */
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.wc-forward:not(.checkout),
.elementor-menu-cart__container .woocommerce-mini-cart__buttons .wc-forward:not(.checkout) {
    background: transparent !important;
    color: rgba(18, 18, 18, 0.55) !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 2px 0 !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    text-decoration-thickness: 1px !important;
    text-decoration-color: rgba(18, 18, 18, 0.25) !important;
    align-self: center !important;
    width: auto !important;
}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.wc-forward:not(.checkout):hover,
.elementor-menu-cart__container .woocommerce-mini-cart__buttons .wc-forward:not(.checkout):hover {
    color: #121212 !important;
    text-decoration-color: #121212 !important;
    background: transparent !important;
}

/* Empty cart state — compact */
.elementor-menu-cart__container .woocommerce-mini-cart__empty-message,
.elementor-menu-cart__container .elementor-menu-cart__empty {
    padding: 40px 0 !important;
    text-align: center !important;
    font-size: 13px !important;
    color: rgba(18, 18, 18, 0.55) !important;
    margin: 0 !important;
}
/* ============================================
   MINI-CART — BUTTON & IMAGE STYLE FIX
   Higher specificity to override Elementor widget CSS
   ============================================ */

/* Product images — more rounded to match site style */
body .elementor-menu-cart__container .woocommerce-mini-cart-item img,
body .elementor-menu-cart__container .mini_cart_item img,
body .elementor-menu-cart__container .elementor-menu-cart__products .product-image,
body .elementor-menu-cart__container .elementor-menu-cart__products .product-image img,
body .elementor-menu-cart__container .elementor-menu-cart__main .cart_list li img {
    border-radius: 12px !important;
    width: 56px !important;
    height: 56px !important;
    object-fit: cover !important;
    border: 1px solid rgba(18, 18, 18, 0.08) !important;
}

body .elementor-menu-cart__container .woocommerce-mini-cart-item,
body .elementor-menu-cart__container .mini_cart_item,
body .elementor-menu-cart__container .elementor-menu-cart__products li {
    grid-template-columns: 56px 1fr auto !important;
}

/* ===== BUTTONS — match site style =====
   Primary: filled black
   Secondary: ghost (transparent, black text, black border)
   Override Elementor widget-scoped styles with body-prefixed .elementor-1253s */

body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body .elementor-menu-cart__container .woocommerce-mini-cart__buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 8px 0 0 !important;
    margin: 0 !important;
}

/* Base button reset — kill Elementor grey */
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button,
body .elementor-menu-cart__container .woocommerce-mini-cart__buttons .button,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a.elementor-button,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button-link {
    width: 100% !important;
    margin: 0 !important;
    padding: 14px 20px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    line-height: 1.2 !important;
    border-radius: 999px !important;
    text-align: center !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: none !important;
}

/* Primary — Checkout (filled black) */
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a.elementor-button-checkout,
body .elementor-menu-cart__container .woocommerce-mini-cart__buttons .checkout {
    background: #121212 !important;
    background-color: #121212 !important;
    color: #FFFFFF !important;
    border: 1px solid #121212 !important;
}
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.elementor-button-checkout:hover,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a.elementor-button-checkout:hover,
body .elementor-menu-cart__container .woocommerce-mini-cart__buttons .checkout:hover {
    background: #000000 !important;
    background-color: #000000 !important;
    border-color: #000000 !important;
    color: #FFFFFF !important;
}

/* Secondary — View cart (ghost: transparent bg, black text, black border) */
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.elementor-button-view-cart,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a.elementor-button-view-cart,
body .elementor-menu-cart__container .woocommerce-mini-cart__buttons .wc-forward:not(.checkout) {
    background: transparent !important;
    background-color: transparent !important;
    color: #121212 !important;
    border: 1px solid #121212 !important;
    text-decoration: none !important;
    width: 100% !important;
    align-self: stretch !important;
    padding: 14px 20px !important;
    font-size: 13px !important;
}
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button.elementor-button-view-cart:hover,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a.elementor-button-view-cart:hover,
body .elementor-menu-cart__container .woocommerce-mini-cart__buttons .wc-forward:not(.checkout):hover {
    background: #121212 !important;
    background-color: #121212 !important;
    color: #FFFFFF !important;
    border-color: #121212 !important;
    text-decoration: none !important;
}
/* ============================================
   MINI-CART — HARD OVERRIDE for buttons + image radius
   Widget renders anchors, not .button class
   ============================================ */

/* Product image radius — target every possible .elementor-1253 */
html body .elementor-menu-cart__container img,
html body .elementor-menu-cart__main img,
html body .elementor-menu-cart__products img,
html body .woocommerce-mini-cart img,
html body .woocommerce-mini-cart-item img,
html body .mini_cart_item img,
html body .elementor-menu-cart__container .cart_list img,
html body .elementor-menu-cart__container a img {
    border-radius: 14px !important;
    width: 64px !important;
    height: 64px !important;
    object-fit: cover !important;
    border: 1px solid rgba(18, 18, 18, 0.08) !important;
}

/* ===== BUTTONS — nuclear override =====
   Mini-cart buttons are <a> tags inside .woocommerce-mini-cart__buttons
   AND may have .button .wc-forward .checkout classes
   Elementor also wraps them as .elementor-button */

html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
html body .elementor-menu-cart__main .woocommerce-mini-cart__buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 8px 0 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

/* Reset ALL buttons/anchors in footer */
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons a,
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons .button,
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a,
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button,
html body .elementor-menu-cart__main .woocommerce-mini-cart__buttons a {
    width: 100% !important;
    display: block !important;
    margin: 0 !important;
    padding: 14px 20px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    line-height: 1.2 !important;
    border-radius: 999px !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: all 0.2s ease-in-out !important;
    box-sizing: border-box !important;
}

/* CHECKOUT — filled black (.checkout class on anchor) */
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons a.checkout,
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons .checkout,
html body .elementor-menu-cart__main .woocommerce-mini-cart__buttons a.checkout,
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a[href*="checkout"],
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button-checkout {
    background: #121212 !important;
    background-color: #121212 !important;
    color: #FFFFFF !important;
    border: 1px solid #121212 !important;
}
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons a.checkout:hover,
html body .elementor-menu-cart__main .woocommerce-mini-cart__buttons a.checkout:hover,
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a[href*="checkout"]:hover {
    background: #000000 !important;
    background-color: #000000 !important;
    color: #FFFFFF !important;
    border-color: #000000 !important;
}

/* VIEW CART — no background, just black text, no border */
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons a.wc-forward:not(.checkout),
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons a:not(.checkout),
html body .elementor-menu-cart__main .woocommerce-mini-cart__buttons a.wc-forward:not(.checkout),
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a[href*="cart"]:not([href*="checkout"]),
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button-view-cart {
    background: transparent !important;
    background-color: transparent !important;
    color: #121212 !important;
    border: 0 !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    padding: 10px 20px !important;
}
html body .elementor-menu-cart__container .woocommerce-mini-cart__buttons a.wc-forward:not(.checkout):hover,
html body .elementor-menu-cart__main .woocommerce-mini-cart__buttons a.wc-forward:not(.checkout):hover,
html body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons a[href*="cart"]:not([href*="checkout"]):hover {
    background: transparent !important;
    background-color: transparent !important;
    color: #000000 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

/* KR 22.09.: Gescrollter Header klebte mit 52px Abstand statt buendig.
   Die Logo-Zeile klappt korrekt auf 0, aber der Header-Container behielt seine
   eigene Polsterung (32px oben / 20px unten / 24px seitlich) und den Flex-Gap.
   Dadurch schwebte die Milchglas-Leiste unter der Oberkante und war 1232 statt 1280 breit. */
#site-header.is-scrolled { padding: 0 !important; gap: 0 !important; row-gap: 0 !important; }
#site-header.is-scrolled #site-header-logo-row { padding: 0 !important; margin: 0 !important; }/* End custom CSS */