/* Spielzeugtraum – ausgelagerte Zusatz-Styles (v3.7.50), vorher inline auf jeder Seite */

/* --- Filter-Widgets --- */
.attr-filter-list{list-style:none;margin:0;padding:0}
    .attr-filter-item a{display:flex;align-items:center;gap:.5em;padding:.45em 0;font-size:.9rem;color:var(--color-text);text-decoration:none;transition:color .2s;border-bottom:1px solid var(--color-border)}
    .attr-filter-item:last-child a{border-bottom:none}
    .attr-filter-item a:hover{color:var(--color-primary)}
    .attr-filter-item.is-active a{color:var(--color-primary);font-weight:700}
    .attr-filter-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:2px solid var(--color-border);border-radius:4px;font-size:.7rem;flex-shrink:0;background:#fff;transition:border-color .2s,background .2s}
    .attr-filter-item.is-active .attr-filter-check{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
    .attr-filter-count{color:var(--color-text-muted);font-size:.8rem;margin-left:auto}
    .active-filters{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}
    .active-filter-pill{display:inline-flex;align-items:center;gap:.3em;background:rgba(255,107,107,.1);color:var(--color-primary);border:2px solid var(--color-primary);border-radius:999px;padding:.25em .75em;font-size:.8rem;font-weight:700;font-family:var(--font-display);text-decoration:none;transition:background .2s}
    .active-filter-pill:hover{background:var(--color-primary);color:#fff}

/* --- Warenkorb / Kasse --- */
.st-tax-notice {
        font-size: 0.78rem;
        color: var(--color-text-muted, #888);
        line-height: 1.4;
        padding: 0.5rem 0 0;
        display: block;
      }
      .st-express-label {
        font-family: var(--font-display, sans-serif);
        font-weight: 700;
        font-size: 0.72rem;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        color: var(--color-text-muted, #888);
        text-align: center;
        margin: 0.75rem 0 0.4rem;
        display: flex;
        align-items: center;
        gap: 0.5rem;
      }
      .st-express-label::before,
      .st-express-label::after {
        content: '';
        flex: 1;
        height: 1px;
        background: var(--color-border, #ddd);
      }

      /* Cart upsell box */
      .st-upsell-box {
        margin-top: 1.5rem;
        padding: 1.2rem;
        border: 2px dashed var(--color-border, #ddd);
        border-radius: var(--radius-lg, 12px);
        background: var(--color-bg-alt, #faf8f4);
      }
      .st-upsell-box__bar {
        height: 6px;
        border-radius: 3px;
        background: var(--color-border, #ddd);
        margin-bottom: 1rem;
        overflow: hidden;
      }
      .st-upsell-box__bar-fill {
        height: 100%;
        border-radius: 3px;
        background: var(--color-primary, #FF6B6B);
        transition: width 0.4s ease;
      }
      .st-upsell-box__title {
        font-family: var(--font-display, sans-serif);
        font-weight: 700;
        font-size: 0.88rem;
        margin: 0 0 0.75rem;
        color: var(--color-text, #333);
      }
      .st-upsell-box__title span {
        color: var(--color-primary, #FF6B6B);
      }
      .st-upsell-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.75rem;
      }
      /* Compact product cards inside upsell */
      .product-card--upsell {
        border: 2px solid var(--color-border, #eee);
        border-radius: var(--radius-md, 8px);
        overflow: hidden;
        background: var(--color-surface, #fff);
      }
      .product-card--upsell .product-card__image-wrap,
      .product-card--upsell .product-card__image-wrap a {
        background: #fff !important;
      }
      .product-card--upsell .product-card__image-wrap img {
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: 1;
        object-fit: contain;
        padding: 0.3rem;
        background: #fff !important;
      }
      .product-card--upsell .product-card__title {
        font-size: 0.9rem;
        line-height: 1.3;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
      }
      .product-card--upsell .product-card__footer {
        gap: 0.3rem;
      }
      .product-card--upsell .product-card__price {
        font-size: 0.85rem;
      }
      .product-card--upsell .price-shipping-note {
        font-size: 0.72rem;
      }
      .product-card--upsell .add-to-cart-btn {
        font-size: 0.8rem;
        padding: 0.45em 0.9em;
        background: var(--color-primary, #FF6B6B);
        color: #fff !important;
        border-radius: var(--radius-full, 50px);
        text-decoration: none !important;
        display: inline-flex;
        align-items: center;
        gap: 0.3em;
        font-weight: 700;
        font-family: var(--font-display, sans-serif);
      }
      .product-card--upsell .add-to-cart-btn svg {
        stroke: #fff;
      }
      .product-card--upsell .price-shipping-note {
        font-size: 0.72rem;
        color: var(--color-text-muted, #888) !important;
        text-decoration: underline;
      }
      .product-card--upsell .product-card__title a {
        color: var(--color-text, #333);
        text-decoration: none !important;
      }
      @media (max-width: 900px) {
        .st-upsell-box { margin-top: 2rem; }
      }

/* --- Newsletter-Formular --- */
.footer-newsletter { margin-bottom: 1.25rem; }
    .footer-newsletter__text {
        font-family: var(--font-display);
        font-weight: 700;
        font-size: 0.92rem;
        color: #fff;
        margin-bottom: 0.6rem;
    }
    .footer-newsletter__form {
        display: flex;
        gap: 0.5rem;
        max-width: 420px;
    }
    .footer-newsletter__form input[type="email"] {
        flex: 1;
        min-width: 0;
        border: 2px solid rgba(255,255,255,0.2);
        border-radius: var(--radius-full);
        padding: 0.55em 1em;
        font-family: var(--font-body);
        font-size: 0.9rem;
        background: rgba(255,255,255,0.1);
        color: #fff;
        outline: none;
        transition: border-color 0.2s;
    }
    .footer-newsletter__form input[type="email"]::placeholder {
        color: rgba(255,255,255,0.5);
    }
    .footer-newsletter__form input[type="email"]:focus {
        border-color: var(--color-primary);
    }
    .footer-newsletter__btn {
        white-space: nowrap;
        padding: 0.55em 1.25em !important;
        font-size: 0.85rem !important;
        flex-shrink: 0;
    }
    .footer-newsletter__msg {
        font-size: 0.82rem;
        margin-top: 0.4rem;
        min-height: 1.2em;
    }
    .footer-newsletter__msg--success { color: var(--color-mint, #4ECDC4); }
    .footer-newsletter__msg--error { color: var(--color-primary, #FF6B6B); }
    @media (max-width: 480px) {
        .footer-newsletter__form { flex-direction: column; }
        /* v3.7.79: Button nicht über die volle Breite, sondern passend breit und rechtsbündig unter dem Feld */
        .footer-newsletter__form input[type="email"] { width: 100%; box-sizing: border-box; }
        .footer-newsletter__btn { align-self: flex-end; width: auto !important; min-width: 0 !important; }
    }

/* --- Maskottchen: Schildkröte im Header (v3.7.51, seit v3.7.52 im Vordergrund – Klicks gehen weiterhin durch) ---
   Desktop + Mobil, nur CSS (transform → GPU), startet nach 4 s, Durchgang ~27 s, alle 54 s. */
.site-header > .container{position:relative;}
.site-header .header-inner{position:relative;z-index:1;}
.st-turtle-lane{display:none;}
@media (prefers-reduced-motion:no-preference){
.st-turtle-lane{display:block;position:absolute;left:0;right:0;bottom:0;height:24px;pointer-events:none;overflow:hidden;z-index:2;opacity:1;}
.st-turtle-track{position:absolute;inset:0;transform:translateX(-100%);animation:st-walk 54s linear 60s infinite both;will-change:transform;}
.st-turtle{position:absolute;right:0;bottom:1px;display:block;}
.st-leg{transform-box:fill-box;transform-origin:center;animation:st-step .45s ease-in-out infinite;}
.st-leg--b{animation-delay:.22s;}
.st-mouth{transform-box:fill-box;transform-origin:left center;animation:st-chomp .38s ease-in-out infinite;}
.st-dot{position:absolute;bottom:7px;width:6px;height:6px;margin-left:-3px;border-radius:50%;opacity:0;}
.st-dot--1{background:var(--color-coral,#FF6B6B);}.st-dot--2{background:var(--color-yellow,#FFD23F);}.st-dot--3{background:var(--color-sky,#74C0FC);}
.st-dot--4{background:var(--color-purple,#B197FC);}.st-dot--5{background:var(--color-orange,#FFA94D);}.st-dot--6{background:var(--color-pink,#F783AC);}
@keyframes st-walk{0%{transform:translateX(-100%);visibility:visible;}48%{transform:translateX(0);visibility:visible;}50%{transform:translateX(calc(0% + 40px));visibility:visible;}50.1%,100%{transform:translateX(calc(0% + 40px));visibility:hidden;}}
@keyframes st-step{0%,100%{transform:translateY(0);}50%{transform:translateY(-1.5px);}}
@keyframes st-chomp{0%,100%{transform:scaleY(1);}50%{transform:scaleY(.12);}}
.st-dot--1{animation:st-eat-1 54s linear 60s infinite both;}
@keyframes st-eat-1{0%{opacity:0;transform:scale(.4);}1.5%{opacity:1;transform:scale(1);}5.4%{opacity:1;transform:scale(1);}5.8%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--2{animation:st-eat-2 54s linear 60s infinite both;}
@keyframes st-eat-2{0%{opacity:0;transform:scale(.4);}1.5%{opacity:1;transform:scale(1);}12.1%{opacity:1;transform:scale(1);}12.5%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--3{animation:st-eat-3 54s linear 60s infinite both;}
@keyframes st-eat-3{0%{opacity:0;transform:scale(.4);}1.5%{opacity:1;transform:scale(1);}19.3%{opacity:1;transform:scale(1);}19.7%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--4{animation:st-eat-4 54s linear 60s infinite both;}
@keyframes st-eat-4{0%{opacity:0;transform:scale(.4);}1.5%{opacity:1;transform:scale(1);}27.0%{opacity:1;transform:scale(1);}27.4%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--5{animation:st-eat-5 54s linear 60s infinite both;}
@keyframes st-eat-5{0%{opacity:0;transform:scale(.4);}1.5%{opacity:1;transform:scale(1);}34.2%{opacity:1;transform:scale(1);}34.6%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--6{animation:st-eat-6 54s linear 60s infinite both;}
@keyframes st-eat-6{0%{opacity:0;transform:scale(.4);}1.5%{opacity:1;transform:scale(1);}41.8%{opacity:1;transform:scale(1);}42.2%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
}
/* Handy: kürzerer Durchgang (~10 s), danach ~26 s Pause (v3.7.54) */
@media (max-width:767px) and (prefers-reduced-motion:no-preference){
.st-turtle-track{animation:st-walk-m 36s linear 60s infinite both;}
@keyframes st-walk-m{0%{transform:translateX(-100%);visibility:visible;}26.7%{transform:translateX(0);visibility:visible;}27.8%{transform:translateX(calc(0% + 40px));visibility:visible;}27.9%,100%{transform:translateX(calc(0% + 40px));visibility:hidden;}}
.st-dot--1{animation:st-eat-m-1 36s linear 60s infinite both;}
@keyframes st-eat-m-1{0%{opacity:0;transform:scale(.4);}1%{opacity:1;transform:scale(1);}2.8%{opacity:1;transform:scale(1);}3.2%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--2{animation:st-eat-m-2 36s linear 60s infinite both;}
@keyframes st-eat-m-2{0%{opacity:0;transform:scale(.4);}1%{opacity:1;transform:scale(1);}6.5%{opacity:1;transform:scale(1);}6.9%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--3{animation:st-eat-m-3 36s linear 60s infinite both;}
@keyframes st-eat-m-3{0%{opacity:0;transform:scale(.4);}1%{opacity:1;transform:scale(1);}10.5%{opacity:1;transform:scale(1);}10.9%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--4{animation:st-eat-m-4 36s linear 60s infinite both;}
@keyframes st-eat-m-4{0%{opacity:0;transform:scale(.4);}1%{opacity:1;transform:scale(1);}14.8%{opacity:1;transform:scale(1);}15.2%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--5{animation:st-eat-m-5 36s linear 60s infinite both;}
@keyframes st-eat-m-5{0%{opacity:0;transform:scale(.4);}1%{opacity:1;transform:scale(1);}18.8%{opacity:1;transform:scale(1);}19.2%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
.st-dot--6{animation:st-eat-m-6 36s linear 60s infinite both;}
@keyframes st-eat-m-6{0%{opacity:0;transform:scale(.4);}1%{opacity:1;transform:scale(1);}23.1%{opacity:1;transform:scale(1);}23.5%{opacity:0;transform:scale(0);}100%{opacity:0;transform:scale(0);}}
}

/* --- Maskottchen: Maulwurf im Footer (v3.7.55) ---
   3 Hügel-Positionen (links/Mitte/rechts), je ein Auftritt von ~9 s (ca. 6 s sichtbar), reihum alle 30 s (Zyklus 90 s).
   Nur CSS (transform), eigene Leiste unter dem Footer-Inhalt, damit nichts verdeckt wird. */
.site-footer{position:relative;}
.st-mole-lane{display:none;}
@media (prefers-reduced-motion:no-preference){
.site-footer{padding-bottom:34px;}
.st-mole-lane{display:block;position:absolute;left:0;right:0;bottom:0;height:34px;pointer-events:none;overflow:hidden;}
.st-mole{position:absolute;bottom:0;width:40px;height:34px;margin-left:-20px;}
.st-mole svg{display:block;overflow:hidden;}
.st-mole-hill,.st-mole-body,.st-mole-paws,.st-mole-look,.st-mole-eyes,.st-mole-crumbs{transform-box:fill-box;animation-duration:90s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-fill-mode:both;animation-delay:var(--d,8s);}
.st-mole-hill{transform-origin:center bottom;animation-name:st-mole-hill;}
.st-mole-body{animation-name:st-mole-peek;}
.st-mole-paws{transform-origin:center;animation-name:st-mole-paws;}
.st-mole-look{transform-origin:center;animation-name:st-mole-look;}
.st-mole-eyes{transform-origin:center;animation-name:st-mole-blink;}
.st-mole-crumbs{transform-origin:center bottom;animation-name:st-mole-crumbs;}
@keyframes st-mole-hill{0%{transform:scaleY(0);}0.9%{transform:scaleY(1.15);}1.3%{transform:scaleY(1);}8.8%{transform:scaleY(1);}9.6%{transform:scaleY(1.1);}10.4%,100%{transform:scaleY(0);}}
@keyframes st-mole-crumbs{0%,0.5%{transform:translateY(4px);opacity:0;}0.8%{opacity:1;}1.8%{transform:translateY(-7px);opacity:0;}9%{transform:translateY(4px);opacity:0;}9.4%{opacity:1;}10.2%,100%{transform:translateY(-6px);opacity:0;}}
@keyframes st-mole-peek{0%,1.2%{transform:translateY(28px);}2%{transform:translateY(-1px);}2.3%{transform:translateY(0);}8.2%{transform:translateY(0);}9.2%,100%{transform:translateY(28px);}}
@keyframes st-mole-paws{0%,1.2%{transform:translateY(28px) scale(1);opacity:0;}1.6%{opacity:1;}2%{transform:translateY(-1px) scale(1);}2.3%{transform:translateY(0) scale(1);}7.7%{transform:translateY(0) scale(1);opacity:1;}8%{transform:translateY(0) scale(.4);opacity:0;}8.05%,100%{transform:translateY(28px) scale(.4);opacity:0;}}
@keyframes st-mole-look{0%,3%{transform:translateX(0);}3.4%,4%{transform:translateX(-1.8px);}4.6%,5.2%{transform:translateX(1.8px);}5.6%,100%{transform:translateX(0);}}
@keyframes st-mole-blink{0%,6%{transform:scaleY(1);}6.15%{transform:scaleY(.1);}6.3%,7.4%{transform:scaleY(1);}7.55%{transform:scaleY(.1);}7.7%,100%{transform:scaleY(1);}}
}

/* --- Maskottchen: Marienkäfer landet auf dem Warenkorb-Button (v3.7.58) ---
   Nur bei gefülltem Warenkorb, nicht auf Warenkorb/Kasse, max. alle 5 Min. (JS in shop-extras.js) */
.st-lb-host{position:relative;}
.st-lb-host .cart-link{z-index:2;}
.st-ladybug{position:absolute;left:0;top:0;width:22px;height:24px;z-index:3;pointer-events:none;will-change:transform;}
.st-lb-clip{position:absolute;inset:0;border-radius:50%;overflow:hidden;pointer-events:none;z-index:3;}
.st-lb-clip .st-ladybug{z-index:auto;}
.st-ladybug svg{display:block;overflow:visible;}
.st-lb-wing{opacity:0;transform-box:fill-box;transform-origin:center top;}
.st-lb-el{transform-box:view-box;transition:transform .25s ease;}
.st-lb-el--l{transform-origin:10px 5.2px;}
.st-lb-el--r{transform-origin:10px 5.2px;}
.st-ladybug.is-flying .st-lb-wing{opacity:1;animation:st-lb-flap .09s linear infinite alternate;}
.st-ladybug.is-flying .st-lb-el--l{transform:rotate(28deg);}
.st-ladybug.is-flying .st-lb-el--r{transform:rotate(-28deg);}
.st-lb-ant{transform-box:fill-box;transform-origin:center bottom;animation:st-lb-ant 1.2s ease-in-out infinite;}
@keyframes st-lb-flap{from{transform:scaleX(1);}to{transform:scaleX(.55);}}
@keyframes st-lb-ant{0%,100%{transform:rotate(0);}30%{transform:rotate(-8deg);}70%{transform:rotate(8deg);}}
.cart-link.st-cart-wiggle{animation:st-cart-wiggle .7s ease-in-out 2 !important;}
@keyframes st-cart-wiggle{0%,100%{transform:rotate(0);}20%{transform:rotate(-9deg);}40%{transform:rotate(7deg);}60%{transform:rotate(-5deg);}80%{transform:rotate(3deg);}}

/* Kundenkonto: Anker-Blöcke nicht unter dem Sticky-Header verstecken (Fallback, JS setzt den exakten Wert) (v3.7.60) */
#anmelden,#registrieren{scroll-margin-top:140px;}
@media (max-width:1023px){#anmelden,#registrieren{scroll-margin-top:84px;}}

/* Mobiles Menü: Anmelden | Registrieren als zusammenhängende Button-Gruppe (v3.7.68) */
.mobile-nav__auth{display:flex;align-items:stretch;margin-bottom:1.5rem;}
.mobile-nav__auth .btn{flex:1 1 0;min-width:0;justify-content:center;margin:0 !important;padding-left:.75em;padding-right:.75em;white-space:nowrap;}
.mobile-nav__auth .btn:first-child{border-radius:var(--radius-full,999px) 0 0 var(--radius-full,999px) !important;}
.mobile-nav__auth .btn:last-child{border-radius:0 var(--radius-full,999px) var(--radius-full,999px) 0 !important;margin-left:-2px !important;}
.mobile-nav__auth .btn:hover,.mobile-nav__auth .btn:focus{transform:none !important;}
.mobile-nav__auth .btn:focus-visible{position:relative;z-index:1;}

/* Desktop: Info-Laufband und Geschenkideen-Slider ca. 1/3 langsamer (Mobil unverändert) (v3.7.71) */
@media (min-width:769px){
.announcement-bar__inner{animation-duration:96s;}                               /* vorher 64 s */
.hero__geschenke-track{animation-duration:calc(var(--items, 15) * 6s);}        /* vorher × 4 s */
}

/* Bewegung reduzieren: Endlos-Laufband und Geschenkideen-Slider anhalten statt "durchrasen" lassen (v3.7.72).
   Die globale Regel (animation-duration: 0.01ms) ist für Endlos-Animationen ungeeignet. */
@media (prefers-reduced-motion:reduce){
.hero__geschenke-track,.announcement-bar__inner{animation:none !important;transform:none !important;}
.hero__geschenke-carousel{overflow-x:auto !important;-webkit-overflow-scrolling:touch;}   /* Produkte per Wischen erreichbar */
}

/* --- Mini-Warenkorb (Seitenfenster von rechts) (v3.7.74) --- */
.st-mc[hidden]{display:none !important;}
.st-mc{position:fixed;inset:0;z-index:100000;}
.st-mc__overlay{position:absolute;inset:0;background:rgba(45,45,45,.45);opacity:0;transition:opacity .3s ease;}
.st-mc__panel{position:absolute;top:0;right:0;bottom:0;width:min(400px,90vw);background:var(--color-bg,#FFFBF2);
  box-shadow:-8px 0 30px rgba(0,0,0,.15);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .32s cubic-bezier(.2,.8,.2,1);outline:none;}
.st-mc.is-open .st-mc__overlay{opacity:1;}
.st-mc.is-open .st-mc__panel{transform:translateX(0);}
html.st-mc-open,body.st-mc-open{overflow:hidden !important;overscroll-behavior:none;}
.st-mc,.st-mc__panel{overscroll-behavior:contain;}
.st-mc__head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;padding-top:calc(1rem + env(safe-area-inset-top,0px));border-bottom:2px solid var(--color-border,#E8E0D0);background:var(--color-surface,#fff);}
.st-mc__head h2{margin:0;font-family:var(--font-display);font-size:1.3rem;}
.st-mc__close{width:40px;height:40px;border:0;border-radius:50%;background:var(--color-bg-alt,#FFF5E0);font-size:1.6rem;line-height:1;cursor:pointer;color:var(--color-text,#2D2D2D);}
.st-mc__close:hover{background:var(--color-border,#E8E0D0);}
.st-mc__titlewrap{display:flex;flex-direction:column;gap:.15rem;min-width:0;}
.st-mc__notice{display:flex;align-items:center;gap:.35rem;color:#2b8a3e;font-weight:700;font-size:.8rem;line-height:1.2;}
.st-mc__notice[hidden]{display:none;}
.st-mc__notice{transition:opacity .6s ease;}
.st-mc__notice.is-faded{opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s;} /* Platz bleibt reserviert → nichts verrutscht */
.st-mc__body{flex:1;min-height:0;display:flex;flex-direction:column;}
.st-mc__loading,.st-mc__empty{padding:2rem 1.25rem;text-align:center;color:var(--color-text-muted,#6B6B6B);}
.st-mc__empty .btn{margin-top:1rem;}
.st-mc__items{list-style:none;margin:0;padding:.5rem 1.25rem;flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
.st-mc__item{display:grid;grid-template-columns:64px 1fr;gap:.75rem;align-items:start;padding:.85rem 0;border-bottom:1px solid var(--color-border,#E8E0D0);}
.st-mc__item:last-child{border-bottom:0;}
.st-mc__img img{display:block;width:64px;height:64px;object-fit:contain;background:#fff;border:2px solid var(--color-border,#E8E0D0);border-radius:var(--radius-sm,8px);padding:2px;box-sizing:border-box;}
.st-mc__info{min-width:0;display:flex;flex-direction:column;gap:.2rem;}
.st-mc__name{font-family:var(--font-display);font-weight:700;color:var(--color-text,#2D2D2D);text-decoration:none;line-height:1.25;font-size:.95rem;}
.st-mc__name:hover{color:var(--color-primary,#FF6B6B);}
.st-mc__meta{font-size:.78rem;color:var(--color-text-muted,#6B6B6B);}
.st-mc__row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.25rem;}
.st-mc__qty{display:inline-flex;align-items:center;border:1.5px solid var(--color-border,#E8E0D0);border-radius:999px;background:#fff;}
.st-mc__step{width:30px;height:28px;border:0;background:none;font-size:1rem;cursor:pointer;color:var(--color-text,#2D2D2D);}
.st-mc__step:disabled{opacity:.3;cursor:default;}
.st-mc__qty-val{min-width:1.6em;text-align:center;font-weight:700;font-size:.9rem;}
.st-mc__qty-single{font-weight:700;font-size:.9rem;}
.st-mc__price{font-weight:700;white-space:nowrap;font-size:.95rem;margin-left:auto;}
.st-mc__remove{flex-shrink:0;margin-right:-6px;width:34px;height:34px;border:0;border-radius:50%;background:none;color:var(--color-text-muted,#6B6B6B);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.st-mc__remove:hover{background:var(--color-bg-alt,#FFF5E0);color:var(--color-primary,#FF6B6B);}
.st-mc__foot{padding:1rem 1.25rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));border-top:2px solid var(--color-border,#E8E0D0);background:var(--color-surface,#fff);display:flex;flex-direction:column;gap:.7rem;}
.st-mc__ship p{margin:0 0 .35rem;font-size:.85rem;}
.st-mc__ship strong{color:var(--color-primary,#FF6B6B);}
.st-mc__ship.is-reached p{color:#2b8a3e;font-weight:700;display:flex;align-items:center;gap:.4rem;}
.st-mc__ok{flex-shrink:0;}
.st-mc__bar{height:8px;border-radius:999px;background:var(--color-bg-alt,#FFF5E0);overflow:hidden;}
.st-mc__bar span{display:block;height:100%;border-radius:inherit;background:var(--color-primary,#FF6B6B);transition:width .4s ease;}
.st-mc__ship.is-reached .st-mc__bar span{background:var(--color-green,#69DB7C);}
.st-mc__sum{display:flex;justify-content:space-between;align-items:baseline;font-size:1rem;}
.st-mc__sum strong{font-size:1.15rem;}
.st-mc__checkout{width:100%;justify-content:center;}
.st-mc__cartlink{text-align:center;font-size:.9rem;color:var(--color-text,#2D2D2D);text-decoration:underline;}
.st-mc__panel.is-busy .st-mc__items{opacity:.55;pointer-events:none;}
@media (prefers-reduced-motion:reduce){.st-mc__panel,.st-mc__overlay{transition:none;}}

/* Mobiles Menü: Scrollen am Listenende nicht an die Seite weitergeben (v3.7.77) */
.mobile-nav,.mobile-nav__panel{overscroll-behavior:contain;}

/* Warenkorb-Seite (v3.7.78) */
/* 1) "Weiter zur Kasse" ist ein Link → die allgemeine Link-Unterstreichung der Textseiten ausnehmen */
.wc-block-cart__submit-button,.wc-block-cart__submit-button *,
.wc-block-components-button,.wc-block-components-button *{text-decoration:none !important;}
/* 2) Mobil: Produkttabelle darf nicht breiter werden als der Inhaltsbereich
   (Tabellen wachsen sonst auf ihre Mindestbreite und ragen rechts bis an den Bildschirmrand) */
@media (max-width:781px){
.wp-block-woocommerce-cart,.wc-block-cart,.wc-block-cart__main{max-width:100% !important;min-width:0 !important;box-sizing:border-box !important;}
table.wc-block-cart-items{width:100% !important;max-width:100% !important;table-layout:fixed !important;box-sizing:border-box !important;margin-left:0 !important;margin-right:0 !important;}
table.wc-block-cart-items .wc-block-components-product-name,
table.wc-block-cart-items .wc-block-components-product-metadata{overflow-wrap:anywhere;}
}

/* Sehr schmale Handys (z. B. Galaxy A55 mit 360 px) – nichts darf über den rechten Rand ragen (v3.7.81) */
@media (max-width:400px){
/* Header: Logo darf etwas schrumpfen, kleinere Abstände (vorher ragten Icons 20 px hinaus) */
.header-inner{gap:.5rem !important;}
.header-actions{gap:.35rem !important;flex-shrink:0;}
.site-logo{flex-shrink:1 !important;min-width:0;}
.site-logo img{height:auto !important;max-height:28px;max-width:100%;}
}
@media (max-width:781px){
/* Warenkorb: Produktspalte flexibel statt fester Breite (vorher ragte die Preis-Spalte 27 px hinaus) */
.wc-block-cart table.wc-block-cart-items tr.wc-block-cart-items__row{grid-template-columns:72px minmax(0,1fr) auto !important;column-gap:.6rem !important;}
.wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__product{min-width:0 !important;}
.wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__total{min-width:0 !important;}
}

/* Mini-Warenkorb: Fenster nur so hoch wie sein Inhalt (max. Bildschirmhöhe) – kein großer Leerraum
   zwischen Artikeln und Summenbereich bei wenigen Artikeln / hohen Bildschirmen (v3.7.82) */
.st-mc__panel{bottom:auto !important;height:auto !important;max-height:100% !important;max-height:100dvh !important;border-bottom-left-radius:var(--radius-lg,24px);overflow:hidden;}
.st-mc__body{flex:0 1 auto !important;min-height:0 !important;}
.st-mc__items{flex:0 1 auto !important;}
/* v3.7.83: Mindesthöhe, damit das Fenster bei 1–2 Artikeln nicht zu klein wirkt.
   Die Artikelliste füllt den gewonnenen Platz, der Summenbereich bleibt unten. */
.st-mc__panel{min-height:min(480px,100dvh) !important;}
.st-mc__body{flex:1 1 auto !important;}
.st-mc__items{flex:1 1 auto !important;}

/* Kasse: Kontaktinformationen, Lieferadresse, Rechnungsadresse und Zahlungsoptionen als eigene Kacheln
   im selben Stil wie die Warenkorb-Kacheln (v3.7.84) */
.wc-block-checkout .wc-block-components-checkout-step{
  border:3px solid var(--color-border,#E8E0D0) !important;
  border-radius:var(--radius-lg,24px) !important;
  padding:1.25rem 1.5rem 1.5rem !important;
  margin:0 0 1.25rem !important;
  background:transparent !important;
  box-sizing:border-box;
}
.wc-block-checkout .wc-block-components-checkout-step::after,
.wc-block-checkout .wc-block-components-checkout-step::before{display:none !important;}   /* Stufen-Linie von WooCommerce */
.wc-block-checkout .wc-block-components-checkout-step__heading{margin-top:0 !important;}
.wc-block-checkout .wc-block-components-checkout-step__container,
.wc-block-checkout .wc-block-components-checkout-step__content{padding-left:0 !important;margin-left:0 !important;}
.wc-block-checkout .wc-block-components-checkout-step__content > :last-child{margin-bottom:0 !important;}
@media (max-width:600px){
.wc-block-checkout .wc-block-components-checkout-step{padding:1rem 1rem 1.25rem !important;border-radius:var(--radius-md,16px) !important;}
}

/* Kasse (v3.7.85) */
/* 1) Kein Leerraum mehr über den Überschriften in den Kacheln */
.wc-block-checkout .wc-block-components-checkout-step{padding-top:1rem !important;}
.wc-block-checkout .wc-block-components-checkout-step > :first-child,
.wc-block-checkout .wc-block-components-checkout-step__heading-container,
.wc-block-checkout .wc-block-components-checkout-step__heading,
.wc-block-checkout .wc-block-components-checkout-step .wc-block-components-title,
.wc-block-checkout .wc-block-components-checkout-step__title{margin-top:0 !important;padding-top:0 !important;}
.wc-block-checkout .wc-block-components-checkout-step > legend.screen-reader-text + *{margin-top:0 !important;}

/* 2) Bestellhinweis + Newsletter + AGB-Checkbox optisch in EINER Kachel (v3.7.86: Selektor an echte Struktur angepasst)
      Struktur: form > fieldset.wc-block-checkout__order-notes + div.wc-gzd-checkboxes */
.wc-block-checkout .wc-block-checkout__order-notes:has(+ .wc-gzd-checkboxes){
  margin-bottom:0 !important;border-bottom:0 !important;
  border-bottom-left-radius:0 !important;border-bottom-right-radius:0 !important;padding-bottom:.4rem !important;
}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes{
  margin-top:0 !important;margin-bottom:1.25rem !important;
  border:3px solid var(--color-border,#E8E0D0) !important;border-top:0 !important;
  border-radius:0 0 var(--radius-lg,24px) var(--radius-lg,24px) !important;
  padding:.2rem 1.5rem 1.25rem !important;box-sizing:border-box;
}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes > :first-child{margin-top:0 !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes > :last-child{margin-bottom:0 !important;}
@media (max-width:600px){
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes{
  padding:.2rem 1rem 1rem !important;border-radius:0 0 var(--radius-md,16px) var(--radius-md,16px) !important;}
}
/* v3.7.87: gleichmäßige Abstände zwischen den drei Checkbox-Zeilen (je .75rem) */
.wc-block-checkout .wc-block-checkout__order-notes:has(+ .wc-gzd-checkboxes){padding-bottom:0 !important;}
.wc-block-checkout .wc-block-checkout__order-notes:has(+ .wc-gzd-checkboxes) .wc-block-components-checkbox,
.wc-block-checkout .wc-block-checkout__order-notes:has(+ .wc-gzd-checkboxes) .wc-block-components-checkout-step__content > :last-child,
.wc-block-checkout .wc-block-checkout__order-notes:has(+ .wc-gzd-checkboxes) .wc-block-checkout__add-note{margin-bottom:0 !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes{padding-top:.75rem !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes .wc-block-components-checkbox{margin:0 !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes > *{margin-top:0 !important;margin-bottom:0 !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes > *:empty{display:none !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes > * + *,
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes .wc-block-components-checkbox + .wc-block-components-checkbox{margin-top:.75rem !important;}
/* v3.7.88: Abstände wirklich angleichen – Germanized verschachtelt die AGB-Checkbox in eigene Hüllen mit
   zusätzlichen Abständen. Alle senkrechten Abstände in der Box auf 0, dann JEDE Checkbox-Zeile .75rem nach oben. */
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes *:not(input){
  margin-top:0 !important;margin-bottom:0 !important;padding-top:0 !important;padding-bottom:0 !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes{padding-top:0 !important;padding-bottom:1.25rem !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes .wc-block-components-checkbox{margin-top:.75rem !important;}
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes .wc-block-components-validation-error:empty{display:none !important;}
@media (max-width:600px){.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes{padding-bottom:1rem !important;}}
/* v3.7.93: Lücke im Rahmen bei angemeldeten Kunden (ohne Newsletter-Checkbox) schließen.
   Die Box hat oben weder Rand noch Innenabstand → der margin-top (.75rem) der ersten Checkbox
   „rutscht" durch die Box nach außen (Margin-Collapsing) und schiebt sie nach unten.
   flow-root hält den Abstand innerhalb der Box. */
.wc-block-checkout .wc-block-checkout__order-notes + .wc-gzd-checkboxes{display:flow-root !important;}

/* Geschenkideen-Slider: feste Kachelbreite ausdrücklich setzen (v3.7.91).
   Ältere Chrome-Versionen (z. B. 134) zählen bei width:max-content die Originalbreite der Bilder mit
   → Laufschiene ~3× zu lang → Slider 3× zu schnell und großteils leer. */
.hero__geschenke-item{width:180px;min-width:180px;max-width:180px;box-sizing:border-box;}
.hero__geschenke-item img{max-width:100%;}
@media (max-width:768px){
.hero__geschenke-item{width:100px;min-width:100px;max-width:100px;}
}


/* =============================================
   Warenkorb: Produktliste überarbeitet (v3.7.95)
   ============================================= */
/* 1) Produktname als Titel: fett, dunkel, Unterstreichung nur beim Hover */
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-name{
  font-family:var(--font-display) !important;font-weight:700 !important;font-size:1.05rem !important;line-height:1.3 !important;
  color:var(--color-text,#2D2D2D) !important;text-decoration:none !important;display:inline-block;margin-bottom:.15rem !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-name:hover,
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-name:focus-visible{
  color:var(--color-primary-dark,#E85555) !important;text-decoration:underline !important;text-underline-offset:3px;}

/* 2) Kurzbeschreibung raus; Infozeilen klein und grau: Marke · Alter → Variante (Farbe: rot) → Lieferzeit */
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-metadata__description{display:none !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-metadata{
  display:flex !important;flex-direction:column !important;gap:.1rem !important;margin:.2rem 0 0 !important;
  font-size:.85rem !important;line-height:1.45 !important;color:var(--color-text-muted,#6B6B6B) !important;}
/* v3.7.96: Blocks rendert die Infos als <span> (ältere Versionen: <li>) mit eigenem " / "-Trennzeichen */
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details{display:contents !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details > span,
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details > li{
  order:2;display:block !important;list-style:none !important;margin:0 !important;padding:0 !important;font-size:inherit !important;color:inherit !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details > * > span[aria-hidden="true"]{display:none !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details > *::before,
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details > *::after{content:none !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details__name{font-weight:600 !important;color:var(--color-text,#2D2D2D) !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details > .wc-block-components-product-details__details{order:1;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details__details .wc-block-components-product-details__name{display:none !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details > .wc-block-components-product-details__lieferzeit{order:3;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details__lieferzeit .wc-block-components-product-details__name{font-weight:400 !important;color:inherit !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-product-details__lieferzeit .wc-block-components-product-details__value{color:#2b8a3e !important;font-weight:600 !important;}

/* 3) Stückpreis nur bei Menge ≥ 2 oder reduziertem Preis (Menge kommt per JS als data-st-qty) */
.wc-block-cart tr.wc-block-cart-items__row[data-st-qty="1"]:not([data-st-save]) .wc-block-cart-item__prices{display:none !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__prices{
  display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;margin:.15rem 0 0 !important;font-size:.95rem !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__prices del{color:var(--color-text-muted,#6B6B6B) !important;font-weight:400 !important;}

/* 4) Spar-Hinweis direkt neben dem Preis (Koralle wie die Sale-Badges im Shop) statt in der Summenspalte */
.wc-block-cart .st-cart-save{
  display:inline-block;background:rgba(255,107,107,.12);color:var(--color-primary-dark,#E85555);
  font-family:var(--font-display);font-weight:700;font-size:.8rem;line-height:1.4;padding:.1em .65em;border-radius:999px;white-space:nowrap;}
.wc-block-cart tr.wc-block-cart-items__row[data-st-save] .wc-block-components-sale-badge{display:none !important;}

/* 5) Mengenauswahl: 44 px hoch, 3px-Rahmen wie die Kacheln; Löschen-Symbol mit großer Tippfläche */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__quantity{
  display:flex !important;align-items:center !important;gap:.6rem !important;margin-top:.7rem !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector{
  display:inline-flex !important;align-items:stretch !important;width:auto !important;min-width:0 !important;height:44px !important;margin:0 !important;
  border:3px solid var(--color-border,#E8E0D0) !important;border-radius:999px !important;background:var(--color-surface,#fff) !important;
  box-sizing:border-box !important;overflow:hidden !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector::after{display:none !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector:focus-within{border-color:var(--color-primary,#FF6B6B) !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector__input{
  width:2.4rem !important;min-width:0 !important;height:100% !important;padding:0 !important;margin:0 !important;border:0 !important;
  background:transparent !important;box-shadow:none !important;text-align:center !important;
  font-family:var(--font-display) !important;font-weight:700 !important;font-size:1rem !important;color:var(--color-text,#2D2D2D) !important;
  -moz-appearance:textfield;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector__button{
  width:40px !important;min-width:40px !important;height:100% !important;padding:0 !important;border:0 !important;background:transparent !important;
  font-size:1.25rem !important;font-weight:700 !important;line-height:1 !important;color:var(--color-text,#2D2D2D) !important;opacity:1 !important;cursor:pointer;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector__button:hover:not(:disabled){color:var(--color-primary-dark,#E85555) !important;background:var(--color-bg-alt,#FFF5E0) !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector__button:disabled{opacity:.3 !important;cursor:default;}
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__remove-link{
  display:inline-flex !important;align-items:center !important;justify-content:center !important;width:44px !important;height:44px !important;
  margin:0 !important;padding:0 !important;border-radius:999px !important;color:var(--color-text-muted,#6B6B6B) !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__remove-link:hover{color:var(--color-primary-dark,#E85555) !important;background:var(--color-bg-alt,#FFF5E0) !important;}

/* 6) Kopfzeile leiser; auf schmalen Bildschirmen ganz weg */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header th,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header span{
  font-size:.75rem !important;font-weight:700 !important;letter-spacing:.06em !important;color:var(--color-text-muted,#6B6B6B) !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header th{border-bottom:1.5px solid var(--color-border,#E8E0D0) !important;padding-bottom:.6rem !important;}
@media (max-width:600px){.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header{display:none !important;}}

/* 7) Größere Produktbilder */
.wc-block-cart table.wc-block-cart-items th.wc-block-cart-items__header-image,
.wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__image{width:108px !important;}
@media (max-width:781px){
.wc-block-cart table.wc-block-cart-items tr.wc-block-cart-items__row{grid-template-columns:92px minmax(0,1fr) auto !important;}
.wc-block-cart table.wc-block-cart-items td.wc-block-cart-item__image{width:auto !important;}
}
@media (max-width:400px){
.wc-block-cart table.wc-block-cart-items tr.wc-block-cart-items__row{grid-template-columns:80px minmax(0,1fr) auto !important;}
}

/* Warenkorb-Summe (rechte Kachel) an die Produktliste angleichen (v3.7.96) */
.wc-block-cart .wc-block-cart__sidebar .wc-block-cart__totals-title{
  font-family:var(--font-display) !important;font-size:.75rem !important;font-weight:700 !important;letter-spacing:.06em !important;
  text-transform:uppercase !important;color:var(--color-text-muted,#6B6B6B) !important;
  margin:0 !important;padding:1rem 0 .6rem !important;line-height:1.4 !important;}
.wc-block-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper{border-top-width:1.5px !important;border-top-color:var(--color-border,#E8E0D0) !important;}
/* Gesamtsumme: Bezeichnung links, Betrag rechts – wie die Zeilen darüber */
.wc-block-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item{justify-content:space-between !important;align-items:baseline !important;}
.wc-block-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{margin-left:auto !important;text-align:right !important;}

/* v3.7.97: Überschriften links (PRODUKT / GESAMTSUMME) und rechts (WARENKORB-SUMME) auf gleicher Höhe –
   beide mit identischem Innenabstand und Zeilenhöhe */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header th{
  padding-top:.75rem !important;padding-bottom:.6rem !important;line-height:1.4 !important;vertical-align:top !important;}
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header th span{line-height:1.4 !important;}
.wc-block-cart .wc-block-cart__sidebar .wc-block-cart__totals-title{padding-top:.75rem !important;padding-bottom:.6rem !important;line-height:1.4 !important;}


/* =============================================
   Kasse: Bestellübersicht analog zum Warenkorb (v3.7.98)
   ============================================= */
/* Bild etwas größer, Mengen-Plakette dezenter */
.wc-block-components-order-summary .wc-block-components-order-summary-item__image{width:64px !important;min-width:64px !important;margin-top:.25rem !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image img{width:64px !important;height:64px !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image .wc-block-components-order-summary-item__quantity{
  border:2px solid var(--color-border,#E8E0D0) !important;background:var(--color-surface,#fff) !important;
  font-family:var(--font-display) !important;font-weight:700 !important;font-size:.75rem !important;}

/* Name: Titel ohne Abstand nach oben (bündig mit Bild und Gesamtpreis) */
.wc-block-components-order-summary .wc-block-components-order-summary-item__description{padding-top:.25rem !important;gap:0 !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item__description .wc-block-components-product-name{
  margin:0 0 .15rem !important;padding:0 !important;font-size:1rem !important;line-height:1.3 !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item__total-price{padding-top:.25rem !important;font-weight:700 !important;}

/* Kurzbeschreibung raus, Infozeilen klein und grau: Marke · Alter → Farbe → Lieferzeit */
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-metadata__description{display:none !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-metadata{
  display:flex !important;flex-direction:column !important;gap:.1rem !important;margin:.2rem 0 0 !important;
  font-size:.85rem !important;line-height:1.45 !important;color:var(--color-text-muted,#6B6B6B) !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details{display:contents !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details > span,
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details > li{
  order:2;display:block !important;list-style:none !important;margin:0 !important;padding:0 !important;font-size:inherit !important;color:inherit !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details > * > span[aria-hidden="true"]{display:none !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details > *::before,
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details > *::after{content:none !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details__name{font-weight:600 !important;color:var(--color-text,#2D2D2D) !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details > .wc-block-components-product-details__details{order:1;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details__details .wc-block-components-product-details__name{display:none !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details > .wc-block-components-product-details__lieferzeit{order:3;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details__lieferzeit .wc-block-components-product-details__name{font-weight:400 !important;color:inherit !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details__lieferzeit .wc-block-components-product-details__value{color:#2b8a3e !important;font-weight:600 !important;}

/* Stückpreis nur bei Menge ≥ 2 oder reduziert; Spar-Hinweis neben dem Preis statt grüner Plakette rechts */
.wc-block-components-order-summary .wc-block-components-order-summary-item[data-st-qty="1"]:not([data-st-save]) .wc-block-cart-item__prices{display:none !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-cart-item__prices{gap:.25rem .5rem !important;margin:.1rem 0 0 !important;font-size:.95rem !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-cart-item__prices del{color:var(--color-text-muted,#6B6B6B) !important;font-weight:400 !important;margin-right:0 !important;}
.wc-block-components-order-summary .st-cart-save{
  display:inline-block;background:rgba(255,107,107,.12);color:var(--color-primary-dark,#E85555);
  font-family:var(--font-display);font-weight:700;font-size:.8rem;line-height:1.4;padding:.1em .65em;border-radius:999px;white-space:nowrap;}
.wc-block-components-order-summary .wc-block-components-order-summary-item[data-st-save] .wc-block-components-sale-badge{display:none !important;}

/* v3.7.99: Mobil – Gesamtsumme neben „Bestellübersicht“ ausblenden, sobald die Übersicht aufgeklappt ist
   (unten steht sie ohnehin). Zugeklappt bleibt sie sichtbar, sonst sieht man den Betrag gar nicht. */
/* v3.7.100: immer ausblenden, außer die Übersicht ist tatsächlich zugeklappt (aria-expanded="false") */
.wc-block-components-checkout-order-summary__title-price,
.wc-block-components-checkout-order-summary__title .wc-block-formatted-money-amount{display:none !important;}

/* Lieferzeit in einer Zeile; mobil etwas mehr Platz für die Textspalte */
.wc-block-components-order-summary .wc-block-components-order-summary-item .wc-block-components-product-details__lieferzeit{white-space:nowrap !important;}
@media (max-width:600px){
.wc-block-components-order-summary .wc-block-components-order-summary-item__description{padding-left:.9rem !important;padding-right:.5rem !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image{width:56px !important;min-width:56px !important;}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image img{width:56px !important;height:56px !important;}
}


/* v3.7.100: Warenkorb/Kasse erst zeigen, wenn WooCommerce die Layout-Breite gemessen hat.
   Blocks setzt is-large / is-medium / is-small / is-mobile erst nach dem ersten Rendern per JS.
   Bis dahin greifen die Kachel-Regeln (die an diese Klassen gebunden sind) nicht → Preise ragen kurz
   aus der Kachel. Sicherheitsnetz: nach spätestens 1,5 s wird der Bereich in jedem Fall sichtbar. */
@keyframes stRevealLayout{to{visibility:visible;}}
.wc-block-components-sidebar-layout:not(.is-large):not(.is-medium):not(.is-small):not(.is-mobile):not(:is(.is-large,.is-medium,.is-small,.is-mobile) .wc-block-components-sidebar-layout){
  visibility:hidden;animation:stRevealLayout 0s linear 1.5s forwards;}


/* v3.7.103: Section-Label ohne eigene Überschrift (Neu eingetroffen, Angebote, Bestseller)
   → so groß wie das „Geschenkideen“-Label im Hero; als <h2> für saubere Gliederung */
.section__tag.section__tag--lead{font-size:1.1rem !important;line-height:1.4 !important;padding:.35em 1.1em !important;margin:0 0 var(--space-sm) !important;}
@media (max-width:600px){.section__tag.section__tag--lead{font-size:1rem !important;}}

/* v3.7.103: Geschenkideen mobil – 6 statt 5 Buttons pro Spalte, damit 11–12 Anlässe in 2 Spalten passen */
@media (max-width:768px){
.hero__geschenke-buttons{max-height:calc(var(--gk-rows, 6) * 2.4rem + (var(--gk-rows, 6) - 1) * 0.3rem) !important;}  /* v3.7.104: Zeilen aus PHP → immer 2 Spalten */
}
