/* ==========================================================================
   SwiftStop Rebrand v2  |  Child-Theme betheme-child  |  22.10.2026
   NUR LOKAL – nicht veröffentlicht. Baut auf swiftstop-refresh.css auf und
   wird danach geladen (functions.php Abschnitt 9, derzeit auskommentiert).

   Regeln:
   - Keine Hover-Bewegung (kein transform/translate/scale), kein text-wrap:balance.
   - Betheme-Highlight (.highlight, .highlight-word, .highlight-border) und
     Slider-Revolution-Layer (sr7-module) werden nicht angefasst.
   - Spezifität so gewählt, dass Theme-Optionen überschrieben werden, aber
     Inline-Werte aus dem BeBuilder (style="…") gewinnen. !important nur dort,
     wo Additional CSS selbst !important setzt (markiert).
   - Grüne Flächen = Sektionen mit BeBuilder-Hintergrund #027B35 (Inline-Style)
     und der Footer: dort weiße Schrift, Buttons Gelb #DDD40E mit #252525.
   ========================================================================== */

:root{
  --ss-hero-from:#EAF3EC;
  --ss-shadow-card:var(--ss-shadow-1);   /* 23.10.: nur neutrale Schatten */
  --ss-shadow-card-hover:var(--ss-shadow-2);
  --ss-shadow-btn:none;                  /* 23.10.: keine grünen Schatten */
  --ss-radius-card:12px;
}

/* 1) Buttons: 23.10. radius 8, kein Schatten ------------------------------- */
html body{
  --mfn-button-padding:14px 28px;
  --mfn-button-border-radius:8px;
  --mfn-button-box-shadow:var(--ss-shadow-btn);
}
html body .button.button_size_3,
html body .button.button_size_2{border-radius:8px;box-shadow:none}
html body .button.button_size_3{padding:16px 32px;font-size:16px;line-height:20px}
html body .button:hover{box-shadow:none}

/* 2) Header: weiß, Schatten + Blur, Menü als Pills ----------------------- */
/* QA 23.10.: kein Blur mehr (backdrop-filter macht #Top_bar zum Containing
   Block für fixed-Kinder -> Mobilmenü/Overlay), schlicht weiß + feiner Schatten. */
/* Sticky-Header wie auf der Live-Seite: oben transparent über dem Hero,
   erst .is-sticky wird zur festen weißen Leiste.
   Betheme schreibt beim Scrollen height:40px auf das große Logo und nimmt es nicht zurück. */
html body #Top_bar:not(.is-sticky) #logo img.logo-main,
html body #Top_bar:not(.is-sticky) #logo img.logo-mobile{
  height:100px !important;
  max-height:100px !important;
  width:auto !important;
}

/* 3) Hero: 23.10. (Dino) reines Weiß, kein Verlauf --------------------------- */
html body #Header_wrapper{background-color:#FFFFFF;background-image:none}
/* Hero-Button und Hero-Bild: Position, Größe und Sichtbarkeit setzt der Slider. Hier nichts verstecken oder verschieben. */

/* 4) Typografie: H1/H2 feiner, Labels -------------------------------- */
:root{
  --ss-h2:clamp(1.75rem, 1.2rem + 2vw, 2.75rem);   /* 28 -> 44px */
  --ss-h3:clamp(1.375rem, 1rem + 1.2vw, 2rem);     /* 22 -> 32px */
}
html h1,html #Subheader .title{font-weight:700;letter-spacing:-.025em}
html h2{font-weight:700;letter-spacing:-.02em}
html h3{font-weight:600;letter-spacing:-.01em}
/* Grüne Label-Pille (Additional CSS) auf Weiß: grünes Tint statt Vollgrün geht
   wegen !important dort nicht -> bleibt Grün mit weißer Schrift, Pill-Form. */
html .agency7-heading{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;padding:6px 16px}

/* 5) Sektionen: abwechselnde Flächen ------------------------------------- */
/* Null-Spezifität: jeder im BeBuilder gesetzte Hintergrund gewinnt. */
/* QA 23.10. (Dino: 'alles weiß'): keine grauen Sektionsflächen mehr, sonst
   harte Grau/Weiß-Kanten. Hellgrau nur noch innerhalb klar begrenzter Boxen. */

/* 6) Feature-Karten + Icon-Kacheln — DEAKTIVIERT 23.10 home-restore
   (Dino: Homepage = Live; Zahlenkreise 1/2/3 und natives Layout behalten). */

/* 7+8) Offer-/News-Karten — DEAKTIVIERT 23.10 home-restore (natives Live-Layout). */

/* 9) Grüne Flächen: Sektionen mit BeBuilder-Hintergrund #027B35 ---------- */
:is(.mcb-section[style*="background-color:#027B35" i], .mcb-section[style*="background-color: #027B35" i]){
  --mfn-button-bg:var(--ss-yellow);--mfn-button-bg-hover:var(--ss-yellow-dark);
  --mfn-button-color:#252525;--mfn-button-color-hover:#252525;
  --mfn-button-icon-color:#252525;--mfn-button-icon-color-hover:#252525;
  --mfn-button-theme-bg:var(--ss-yellow);--mfn-button-theme-bg-hover:var(--ss-yellow-dark);
  --mfn-button-theme-color:#252525;--mfn-button-theme-color-hover:#252525;
  --mfn-button-box-shadow:none;
}
:is(.mcb-section[style*="background-color:#027B35" i]) :is(h1,h2,h3,h4,h5,p,li,address,.column_attr){color:#FFFFFF}
:is(.mcb-section[style*="background-color:#027B35" i]) a:not(.button){color:#FFFFFF;text-decoration:underline;text-decoration-color:rgba(255,255,255,.5)}
:is(.mcb-section[style*="background-color:#027B35" i]) :is(.counter .number, .counter .title, .quick_fact *){color:#FFFFFF}
/* Labels auf Grün: kein Kasten, nur ruhige Versal-Zeile */
:is(.mcb-section[style*="background-color:#027B35" i]) .agency7-heading{padding:0;color:rgba(255,255,255,.85);letter-spacing:.14em}
/* Kontaktformular auf Grün */
:is(.mcb-section[style*="background-color:#027B35" i]) .wpcf7 :is(input[type=text],input[type=email],input[type=tel],textarea){
  background-color:#FFFFFF;color:#252525;border:1px solid transparent;border-radius:12px;padding:14px 16px;
  box-shadow:0 2px 6px rgba(0,0,0,.08);
}
:is(.mcb-section[style*="background-color:#027B35" i]) .wpcf7 :is(input,textarea)::placeholder{color:#5C635E}
:is(.mcb-section[style*="background-color:#027B35" i]) .wpcf7 :is(input,textarea)::selection{background:#EAF3EC;color:#252525}
:is(.mcb-section[style*="background-color:#027B35" i]) .wpcf7 :is(input,textarea):focus{border-color:var(--ss-yellow);box-shadow:0 0 0 3px rgba(221,212,14,.45);outline:none}
:is(.mcb-section[style*="background-color:#027B35" i]) .wpcf7 input[type=submit]{
  background-color:var(--ss-yellow);color:#252525;border:0;border-radius:12px;
  min-height:52px;font-weight:700;font-size:16px;box-shadow:none;
}
:is(.mcb-section[style*="background-color:#027B35" i]) .wpcf7 input[type=submit]:hover{background-color:var(--ss-yellow-dark);color:#252525}
:is(.mcb-section[style*="background-color:#027B35" i]) hr:not(.no_line){border-color:rgba(255,255,255,.25);background-color:rgba(255,255,255,.25)}

/* 10) Footer — HOME-RESTORE 23.10: kein erzwungenes Dunkelgrün (Live = hellgrau #fafafa).
   Nur leichte Neutralisierung; Theme/Betheme-Defaults wieder sichtbar. */
html body #Footer{background-image:none;border-top:0;box-shadow:none}
html body #Footer .widget_nav_menu ul.menu{background:transparent;border-radius:0}
html body #Footer .widget_nav_menu ul.menu li{border:0;background:transparent}
html body #Footer .widget_nav_menu ul.menu li::after{content:none}

/* 11) Shop / Swift Stops: Raster, Karten, kein Zoom ---------------------- */
html body.woocommerce .products_wrapper{width:100%;flex:1 1 100%;min-width:0}
html body.woocommerce ul.products{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}
html body.post-type-archive-product #Content,
html body.tax-product_cat #Content,
html body.woocommerce-shop #Content,
html body.no-content-padding.woocommerce #Content{padding-bottom:80px !important}
html body.woocommerce ul.products::before,html body.woocommerce ul.products::after{display:none}
/* WC-Core setzt .woocommerce ul.products[class*=columns-] li.product{width:30.75%} (0,3,2) – daher doppelte Klasse */
html body.woocommerce ul.products.products > li.product.product{width:auto;float:none;margin:0;clear:none;display:flex;flex-direction:column;height:100%}
@media (min-width:960px) and (max-width:1239px){
  /* Additional CSS setzt hier float/margin mit !important -> neutralisieren */
  html body.woocommerce ul.products > li.product{margin:0 !important}
}
@media (max-width:959px){html body.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media (max-width:767px){html body.woocommerce ul.products{grid-template-columns:1fr}}
html body.woocommerce ul.products > li.product{border-radius:var(--ss-radius-card);box-shadow:var(--ss-shadow-card)}
html body.woocommerce ul.products > li.product:hover{box-shadow:var(--ss-shadow-card-hover);transform:none}
html body.woocommerce ul.products > li.product .image_frame,
html body.woocommerce ul.products > li.product .image_wrapper{border-radius:0;margin:0}
html body.woocommerce ul.products > li.product .product-loop-thumb img{
  width:100%;height:auto;aspect-ratio:4/3;min-height:0;max-height:none;object-fit:cover;
}
/* Betheme-Bildzoom/-Overlay an Produktkarten aus */
html body ul.products li.product .image_frame :is(img, .image_wrapper img, .mask),
html body ul.products li.product .image_frame:hover :is(img, .image_wrapper img),
html body ul.products li.product .image_frame.hover :is(img, .image_wrapper img){transform:none;transition:none}
html body ul.products li.product .image_frame .image_wrapper .mask{display:none}
html body ul.products li.product .image_frame .image_links{display:none}
html body.woocommerce ul.products > li.product h4, html body.woocommerce ul.products > li.product h2{font-size:20px;line-height:1.3;font-weight:600;margin:14px 0 4px}
html body.woocommerce ul.products > li.product .price{font-size:18px;color:var(--ss-green);margin-top:auto}

/* Filter-Sidebar (WooCommerce Produktfilter-Block) als helle Karte */
html body .widget-area .wp-block-woocommerce-product-filters{
  background:#FFFFFF;border:1px solid var(--ss-border);border-radius:var(--ss-radius-card);
  box-shadow:var(--ss-shadow-card);padding:22px 20px;
}
html body .wp-block-woocommerce-product-filters h6.wp-block-heading{
  color:#252525;font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;margin-bottom:12px;
}
html body .wp-block-woocommerce-product-filters .wp-block-woocommerce-product-filter-taxonomy{margin-top:22px}
/* Preisregler */
html body .wc-block-product-filter-price-slider__range .range-bar{
  background:linear-gradient(to right, var(--ss-border) var(--low), var(--ss-green) var(--low), var(--ss-green) var(--high), var(--ss-border) var(--high));
  height:4px;border-radius:4px;
}
html body .wc-block-product-filter-price-slider__range input[type=range]::-webkit-slider-thumb{background:var(--ss-green);border:3px solid #FFFFFF;box-shadow:0 0 0 1px var(--ss-green);width:20px;height:20px}
html body .wc-block-product-filter-price-slider__range input[type=range]::-moz-range-thumb{background:var(--ss-green);border:3px solid #FFFFFF;box-shadow:0 0 0 1px var(--ss-green);width:20px;height:20px}
/* Fix 22.10. 23:55: Woo-Grid hat 'auto'-Spalten, die Felder waren fix 90px
   -> 90+12+0+12+90 = 204px > 172px Karteninhalt, Regler + rechtes Feld standen
   rechts über. Jetzt: Spalten flexibel (minmax(0,1fr)), alles border-box,
   Breite = Karteninhalt. */
html body .wc-block-product-filter-price-slider,
html body .wc-block-product-filter-price-slider__content,
html body .wc-block-product-filter-price-slider__range{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
html body .wc-block-product-filter-price-slider__content{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:8px;row-gap:0}
html body .wc-block-product-filter-price-slider__range{
  margin-top:8px !important;
  margin-bottom:36px !important;
}
html body .wc-block-product-filter-price-slider__range input[type=range]{width:100%;max-width:100%;box-sizing:border-box}
html body .wc-block-product-filter-price-slider .text{min-width:0}
html body .wc-block-product-filter-price-slider .text input[type=text]{
  height:40px;border:1px solid var(--ss-border-strong);border-radius:8px;padding:0 10px;font-size:15px;color:#252525;background:#FFFFFF;
  width:100%;max-width:none;min-width:0;box-sizing:border-box;
}
/* Kategorien als Chips: Checkbox bleibt fokussierbar (nur visuell versteckt) */
html body .wc-block-product-filter-checkbox-list__items{display:flex;flex-wrap:wrap;gap:8px}
html body .wc-block-product-filter-checkbox-list__item{margin:0}
html body .wc-block-product-filter-checkbox-list__label{
  position:relative;display:inline-flex;align-items:center;gap:6px;cursor:pointer;
  padding:8px 14px;border:1px solid var(--ss-border);border-radius:999px;background:#FFFFFF;
  font-size:14px;line-height:1.2;color:#252525;transition:background-color .15s, border-color .15s, color .15s;
}
html body .wc-block-product-filter-checkbox-list__label:hover{background:var(--ss-green-tint);border-color:#CFE3D5}
html body .wc-block-product-filter-checkbox-list__input-wrapper{position:absolute;inset:0;width:auto;height:auto;margin:0;opacity:0}
html body .wc-block-product-filter-checkbox-list__input-wrapper input{position:absolute;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
html body .wc-block-product-filter-checkbox-list__label:has(input:checked){background:var(--ss-green);border-color:var(--ss-green);color:#FFFFFF}
html body .wc-block-product-filter-checkbox-list__label:has(input:focus-visible){outline:3px solid var(--ss-focus-color);outline-offset:2px}
html body .wc-block-product-filter-checkbox-list__text{color:inherit}

/* 12) Produktseite (Mureck u. a.): Fläche + Karten ---------------------- */
/* QA 23.10.: Seitenfläche weiß (vorher Grau -> Kante zu Header/Footer) */
html body.single-product .pricing-box{border-radius:var(--ss-radius-card);box-shadow:var(--ss-shadow-card);background:#FFFFFF}
html body.single-product .pricing-box .plan-header{background:var(--ss-green-tint);padding:22px 20px}
html body.single-product .pricing-box .plan-header .price{color:var(--ss-green-dark)}
html body.single-product .pricing-box .plan-header .price > span{font-weight:700}
html body.single-product .column_column:has(ul.list_custom) > .mcb-column-inner{
  background:#FFFFFF;border:1px solid var(--ss-border);border-radius:var(--ss-radius-card);
  box-shadow:var(--ss-shadow-card);padding:24px 28px;
}
html body.single-product .column_column:has(ul.list_custom) ul.list_custom li{padding:8px 0;border-bottom:1px solid var(--ss-border)}
html body.single-product .column_column:has(ul.list_custom) ul.list_custom li:last-child{border-bottom:0}
html body.single-product .woocommerce-product-gallery{border-radius:var(--ss-radius-card);overflow:hidden;box-shadow:var(--ss-shadow-card)}
/* Buchungszeile ohne Karte, wie auf der Live-Seite. */
html body.single-product iframe[src*="google.com/maps"]{border-radius:var(--ss-radius-card)}

/* 13) Warenkorb & Kasse: Fläche + Karten -------------------------------- */
/* QA 23.10.: Seitenfläche weiß */
html body.woocommerce-checkout #customer_details,
html body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
html body.woocommerce-checkout #order_review{
  background:#FFFFFF;border:1px solid var(--ss-border);border-radius:var(--ss-radius-card);box-shadow:var(--ss-shadow-card);
}
html body.woocommerce-checkout #customer_details{padding:clamp(18px,2.4vw,32px);box-sizing:border-box}
html body.woocommerce-checkout #order_review_heading{margin-top:8px}
html body.woocommerce-checkout #payment{background:var(--ss-surface)}
/* WooPayments-Fehlermeldung unter dem Kartenfeld: volle Feldbreite */
html body.woocommerce-checkout :is(#wcpay-errors, .wcpay-upe-element + .woocommerce-NoticeGroup, .payment_box .woocommerce-error, .payment_box .woocommerce-NoticeGroup){
  display:block;width:100%;max-width:none;box-sizing:border-box;margin-left:0;margin-right:0;
}
html body.woocommerce-checkout .payment_box :is(.woocommerce-error, #wcpay-errors ul){width:100%;box-sizing:border-box;margin:10px 0 0}
/* Block-Warenkorb/-Kasse: Positionen als Karte, Bilder nicht beschneiden */
html body .wp-block-woocommerce-cart .wc-block-cart-items,
html body .wp-block-woocommerce-checkout .wc-block-checkout__main{background:#FFFFFF;border:1px solid var(--ss-border);border-radius:var(--ss-radius-card);box-shadow:var(--ss-shadow-card);padding:clamp(14px,2vw,24px)}
html body .wp-block-woocommerce-cart .wc-block-cart-items{border-collapse:separate}
html body :is(.wc-block-cart-item__image, .wc-block-components-order-summary-item__image, .woocommerce-mini-cart-item, td.product-thumbnail) img{
  object-fit:contain;height:auto;aspect-ratio:auto;max-height:none;background:#FFFFFF;border-radius:10px;
}

/* 14) Mobil ------------------------------------------------------------------ */
@media (max-width:767px){
  .mcb-wrap:has(> .mcb-wrap-inner > .column_image + .column_heading) > .mcb-wrap-inner{margin:10px 0;height:auto}
  html body .button.button_size_3{padding:16px 24px;font-size:16px}
}

/* 15) Design-Vorgaben 23.10. (Design Bot + Freigaben Dino) ------------------ */
/* Listen: einheitliche Trennlinien in voller Breite statt kurzer 70px-Striche
   (Betheme/Agency li::after), letzte Zeile ohne Linie. */
html body #Content ul.list_custom > li::after{content:none}
html body #Content ul.list_custom > li{border-bottom:1px solid var(--ss-border)}
html body #Content ul.list_custom > li:last-child{border-bottom:0}

/* Trennbild unter den Schritten (agency7-sep1: Linie + Pfeil) passt nicht ins
   Konzept "Abstand statt Linien" -> ausgeblendet (Bild bleibt im BeBuilder). */
html body .column_image:has(img[src*="agency7-sep1"], img[data-lzl-src*="agency7-sep1"]){display:none}

/* CTA unter einer Kartenreihe ("Jetzt bezahlen", Startseite): nicht breiter als
   die Reihe, Breite auto (min 280), mittig, 52px, Abstand 32px (mobil 24).
   Betheme setzt .column_button .button{margin:0!important} -> Abstand per Padding. */
html body .mcb-item-cz6w87s > .mcb-column-inner{padding-top:32px;text-align:center}
html body .mcb-item-cz6w87s a.button.button_full_width{
  display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:280px;max-width:100%;
  min-height:52px;box-sizing:border-box;padding:0 32px;border-radius:8px;box-shadow:none;
}
@media (max-width:767px){
  html body .mcb-item-cz6w87s > .mcb-column-inner{padding-top:24px}
  html body .mcb-item-cz6w87s a.button.button_full_width{min-width:280px;width:auto}
}

/* Kategorie-Badges im Inhalt (Swift_Stop_*.png): einheitlich 56px hoch (mobil 44),
   Breite auto, nichts beschnitten. Footer-Badges bleiben klein. */
html body #Content img[src*="Swift_Stop_"]{
  height:56px;width:auto;max-width:100%;object-fit:contain;overflow:visible;float:none;
}
@media (max-width:767px){html body #Content img[src*="Swift_Stop_"]{height:44px}}

/* Kategorie-Illustrationen (/kategorien/): KEIN Kreis (Freigabe Dino/Design Bot).
   Quadrat 280px (mobil 200), radius 24, ganzes Bild sichtbar. Die BeBuilder-Maske
   (.mfn-mask-shape.circle) wird nur neutralisiert, die Einstellung bleibt im Editor. */
html body .column_image .image_frame.mfn-mask-shape:has(img[src*="swiftstop-illu-swiftstop-"]){
  display:block;width:280px;max-width:100%;margin:0 auto;border-radius:24px;overflow:hidden;background:transparent;
}
html body .column_image .image_frame.mfn-mask-shape img[src*="swiftstop-illu-swiftstop-"]{
  -webkit-mask-image:none !important;mask-image:none !important; /* Betheme setzt die Kreis-Maske mit !important */
  width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;border-radius:24px;
}
@media (max-width:767px){html body .column_image .image_frame.mfn-mask-shape:has(img[src*="swiftstop-illu-swiftstop-"]){width:200px}}

/* Eingefügter Fremdtext (aus einem Chat-Tool kopiert, Inline-Styles mit oklch-Farben,
   Schrift fkGroteskNeue, off-white Fläche) auf /kategorien/: Fläche transparent,
   Schrift/Farbe wie der übrige Text. !important nötig wegen Inline-Style.
   Inhaltlich sauber = Text im BeBuilder als reinen Text neu einfügen (Inhaltspunkt). */
html body #Content .column_attr :is(p,span)[style*="oklch"]{
  background-color:transparent !important;color:inherit !important;font-family:inherit !important;
  border:0 !important;font-size:inherit !important;
}

/* 16) QA Runde 1 + Design-Bot 23.10. (Kontrast, Grün, Typo, Cart/Kasse, Hero) */

:root{
  --ss-green:#027B35;
  --ss-green-dark:#01602A;
  --ss-green-tint:#EAF3EC;
  --ss-yellow:#DDD40E;
  --ss-ink:#252525;
  --ss-muted:#5C635E;
  --ss-border:#E2E7E3;
  --ss-h1:48px; --ss-h2:36px; --ss-h3:24px; --ss-body:17px;
  --ss-shadow-1:0 1px 2px rgba(0,0,0,.04), 0 8px 24px rgba(0,0,0,.06);
  --ss-shadow-2:0 2px 4px rgba(0,0,0,.05), 0 12px 28px rgba(0,0,0,.08);
  --ss-shadow-3:0 4px 16px rgba(0,0,0,.10);
}
@media (max-width:767px){
  :root{ --ss-h1:32px; --ss-h2:26px; --ss-h3:20px; --ss-body:16px; }
}

/* Schriftgröße und Farbe kommen aus Betheme. Kein globaler Zwang. */

/* Auf grünen Sektionen nur ein Fallback ohne !important. Inline-Farbe aus dem BeBuilder gewinnt.
   Highlight-Wörter nicht einfärben, sonst wird der Marker-Text weiß. */
html body .mcb-section[style*="027B35"] :is(h1,h2,h3,h4,h5,h6,p,li,address,label),
html body .mcb-section[style*="027B35"] :is(span,a):not(.highlight):not(.highlight-word):not(.highlight-border):not(.button){
  color:#FFFFFF;
}
/* home-restore: Footer nicht mehr als Grünfläche mit Weißtext behandeln */
/* Gelbe Überschriften/Labels (Filter, Form) -> Tinte */
/* Textfarbe und Buttonfarbe setzt der BeBuilder. Gelbe Schrift nicht mehr umfärben. */

/* Nur ein Grün #027B35 (+ Hover #01602A, Tint #EAF3EC) — QA39/43/57 */
html body .woocommerce a.button, html body .woocommerce button.button,
html body .woocommerce input.button, html body .woocommerce #respond input#submit,
html body .woocommerce a.button.alt, html body .woocommerce button.button.alt,
html body .button, html body input[type=submit].button{
  background-color:var(--ss-green);border-color:var(--ss-green);color:#FFFFFF;
}
html body .woocommerce a.button:hover, html body .woocommerce button.button:hover,
html body .button:hover, html body input[type=submit].button:hover{
  background-color:var(--ss-green-dark);border-color:var(--ss-green-dark);color:#FFFFFF;
}
html body .woocommerce .price, html body .woocommerce ul.products li.product .price,
html body .woocommerce div.product p.price, html body .woocommerce div.product span.price{color:var(--ss-green)}
html body .woocommerce span.onsale{background-color:var(--ss-green)}

/* QA13: deaktivierter Buchen-Button — Grün mit opacity .45, Text weiß */
html body.single-product form.cart .single_add_to_cart_button.ssck-blocked,
html body.single-product form.cart .single_add_to_cart_button:disabled,
html body.single-product form.cart .single_add_to_cart_button[disabled],
html body.single-product form.cart .single_add_to_cart_button.disabled{
  background-color:var(--ss-green) !important;border-color:var(--ss-green) !important;
  color:#FFFFFF !important;opacity:.45;cursor:not-allowed;box-shadow:none !important;filter:none;
}
html body.single-product #ssck_plate.ssck-invalid,
html body.single-product input#ssck_plate.ssck-invalid{
  border-color:#C0392B !important;box-shadow:0 0 0 2px rgba(192,57,43,.18);
}
html body.single-product .ssck-msg{color:#C0392B;font-size:14px;margin-top:8px}

/* QA1/2: Cart & Checkout mobil — kein Querscroll, gestapelte Karten */
@media (max-width:767px){
  html body.woocommerce-cart .woocommerce,
  html body.woocommerce-checkout .woocommerce,
  html body .wp-block-woocommerce-cart,
  html body .wp-block-woocommerce-checkout,
  html body .wc-block-cart, html body .wc-block-checkout{max-width:100%;overflow-x:hidden}
  html body .wc-block-cart-items,
  html body .wc-block-cart-items__row,
  html body table.shop_table,
  html body table.shop_table.woocommerce-checkout-review-order-table,
  html body .woocommerce-cart-form__contents{display:block;width:100%;max-width:100%;min-width:0;table-layout:fixed}
  html body .wc-block-cart-items__row,
  html body table.shop_table tr{display:block;width:100%;max-width:100%;box-sizing:border-box;
    background:#FFFFFF;border:1px solid var(--ss-border);border-radius:12px;padding:16px;margin:0 0 12px;box-shadow:var(--ss-shadow-1)}
  html body .wc-block-cart-items__row > *,
  html body table.shop_table td, html body table.shop_table th{
    display:block;width:100% !important;max-width:100%;min-width:0;box-sizing:border-box;
    border:0;padding:4px 0;text-align:left !important;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
  html body .wc-block-components-product-metadata,
  html body .wc-block-components-product-details,
  html body .wc-block-cart-item__product,
  html body .wc-block-cart-item__total,
  html body .wc-block-cart-item__quantity{min-width:0;max-width:100%;overflow-wrap:anywhere}
  html body .wp-block-woocommerce-cart-order-summary-block,
  html body .woocommerce-checkout-review-order{max-width:100%;overflow:hidden}
  html body .woocommerce-checkout-review-order-table{width:100% !important;max-width:100%;min-width:0}
}
/* Desktop: Tabelle in Karte halten */
html body .woocommerce-checkout-review-order-table{width:100%;max-width:100%;table-layout:fixed}
html body .woocommerce-checkout-review-order-table td,
html body .woocommerce-checkout-review-order-table th{overflow-wrap:anywhere;word-break:break-word}

/* Hero-CTA: Position und Breite setzt der Slider, nicht dieses CSS. */

/* QA12: Cookie-Banner mobil als Bottom-Sheet (nur CSS, soweit möglich) */
@media (max-width:767px){
  html body #BorlabsCookieBox .brlbs-cmpnt-dialog,
  html body #BorlabsCookieBox [role="dialog"],
  html body #BorlabsCookieBox .brlbs-box,
  html body ._brlbs-bar-wrapper, html body .brlbs-cmpnt-box{
    max-height:60vh !important;overflow:auto !important;
    border-radius:16px 16px 0 0 !important;
    position:fixed !important;left:0 !important;right:0 !important;bottom:0 !important;top:auto !important;
  }
  html body #BorlabsCookieBox button,
  html body #BorlabsCookieBox .brlbs-btn,
  html body #BorlabsCookieBox a.brlbs-btn{background-color:var(--ss-green) !important;border-color:var(--ss-green) !important;color:#FFFFFF !important}
  html body #BorlabsCookieBox button[class*="essential"],
  html body #BorlabsCookieBox .brlbs-btn-accept-only-essential{background:#FFFFFF !important;color:var(--ss-green) !important;border:2px solid var(--ss-green) !important}
}

/* QA15: Button nicht breiter als Kartenraster; Abstand Karte→Button 24px */
html body .mcb-item-cz6w87s > .mcb-column-inner{padding-top:24px !important;text-align:center}
html body .mcb-item-cz6w87s a.button{
  display:inline-flex;align-items:center;justify-content:center;
  width:auto;max-width:100%;min-width:280px;min-height:52px;padding:0 32px;border-radius:8px;box-shadow:none;
}
@media (max-width:767px){
  html body .mcb-item-cz6w87s a.button{min-width:0;width:100%;max-width:calc(100vw - 48px);margin:0 auto}
}

/* QA16: Pricing-Slider Zähler „1/4“ unter dem Bild rechts */
html body .offer_thumb .image_frame + .progress,
html body .offer .progress, html body .ul.left .progress,
html body .offers .progress, html body .flat_box .progress{ }
html body .ui-slider + .ui-slider-handle{}
/* Betheme Offer-Slider Counter */
html body .offer .hr_dots, html body .section-offer .hr_dots{position:static}
html body .offer_li .image_wrapper{position:relative}
html body .offer .slider_pagination, html body .flat_booked .slider_pagination,
html body .offer .swiper-pagination, html body .mfn-offer-slider .swiper-pagination,
html body .offers_group .slider_pagination{
  position:static !important;display:flex;justify-content:flex-end;gap:4px;margin-top:8px;
  font-size:14px;color:var(--ss-muted);line-height:1.4;
}

/* QA18: Kategorien Quadrate radius 24 — Label darunter (bereits s15); sicherstellen */
html body .column_image .image_frame.mfn-mask-shape:has(img[src*="swiftstop-illu-swiftstop-"]){
  display:block;width:280px;max-width:100%;margin:0 auto;border-radius:24px;overflow:hidden;
}
html body .column_image .image_frame.mfn-mask-shape img[src*="swiftstop-illu-swiftstop-"]{
  -webkit-mask-image:none !important;mask-image:none !important;
  width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:24px;
}

/* QA19: Filter mobil — Sidebar nach oben; Button-Stil (Bottom-Sheet braucht JS → später) */
@media (max-width:767px){
  html body.woocommerce .sidebar, html body.woocommerce-page .sidebar,
  html body.archive.woocommerce #Secondary, html body.archive.woocommerce aside.sidebar{
    order:-1;width:100%;margin:0 0 24px;
  }
  html body.woocommerce .content_wrapper, html body.archive .sections_group{display:flex;flex-direction:column}
  html body .widget_price_filter, html body .widget_product_categories,
  html body .woocommerce .widget{
    background:#FFFFFF;border:1px solid var(--ss-border);border-radius:12px;padding:20px;margin-bottom:12px;
  }
}

/* Preisfilter als Karte (QA50) */
html body .widget_price_filter, html body .woocommerce .widget.widget_price_filter{
  background:#FFFFFF;border:1px solid var(--ss-border);border-radius:12px;padding:20px;box-shadow:var(--ss-shadow-1);
}
html body .widget_price_filter .price_slider_amount{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}
html body .widget_price_filter input[type=text],
html body .widget_price_filter input.input-text{width:100%;min-width:0;font-size:14px;height:42px;box-sizing:border-box}
html body .widget_price_filter .ui-slider .ui-slider-range{background:var(--ss-green)}
html body .widget_price_filter .ui-slider .ui-slider-handle{background:var(--ss-green);border-color:var(--ss-green)}
html body .widget_price_filter .widget-title, html body .widget_product_categories .widget-title{color:var(--ss-ink) !important;font-size:14px;font-weight:600}

/* QA22: volle Listen-Trennlinien (bereits s15) — Checkmarks 18px */
html body ul.list_check li:before, html body ul.list_custom li > i{font-size:18px;width:18px;height:18px}

/* QA24: weichere Übergänge statt harter Kanten (ohne Verlaufsflächen laut Dino „white everywhere“ — nur Footer-Kante) */
html body #Footer{box-shadow:0 -8px 24px rgba(0,0,0,.04)}

/* QA26: Footer-Badges lesbar — helle Pille, einheitliche Höhe */
html body #Footer .product-badges img,
html body #Footer img[src*="Swift_Stop_"]{
  height:32px !important;width:auto !important;max-width:100%;object-fit:contain;
  background:transparent !important;background-image:none !important;
  border-radius:0 !important;padding:0 !important;box-sizing:content-box;
}

/* QA27: Testimonials Anführungszeichen Markengrün */
html body .blockquote, html body blockquote, html body .testimonials_slider .bq_wrapper:before,
html body .testimonial .bq_wrapper:before{color:var(--ss-green)}
html body .testimonials_slider, html body .testimonial{font-family:Poppins,sans-serif}

/* QA30: Karten-Cluster — Plugin oft Inline; weiche Annäherung */
html body .leaflet-marker-icon{
  background:transparent !important;background-color:transparent !important;
  border:0 !important;border-radius:50% !important;overflow:hidden !important;
  box-shadow:none !important;
}
html body .leaflet-marker-icon img{
  border-radius:50% !important;display:block !important;
}
html body .marker-cluster div{
  background-color:var(--ss-green) !important;color:#fff !important;border-radius:50% !important;
}

/* QA34: große Leerräume reduzieren wo per CSS möglich */
html body.ss-page-kategorien #Content .mcb-section:first-child,
html body.ss-page-kontakt #Content .mcb-section:first-child{padding-top:48px}
html body.woocommerce-shop #Content, html body.post-type-archive-product #Content{padding-top:24px}

/* QA35: Warenkorb-Zahl auf grünem Header */
html body #Top_bar .header-cart-count, html body #Top_bar #header_cart .header-cart-count{
  background:var(--ss-yellow);color:var(--ss-ink);font-weight:700;
}
html body.header-transparent #Top_bar:not(.is-sticky) .header-cart-count{background:var(--ss-yellow);color:var(--ss-ink)}

/* QA36: Produktrasters Preise auf Linie — Flex-Karten */
html body ul.products{display:flex;flex-wrap:wrap;gap:24px;align-items:stretch}
html body ul.products::before, html body ul.products::after{display:none !important;content:none !important}
html body ul.products li.product{
  display:flex;flex-direction:column;float:none !important;margin:0 !important;
  width:calc(33.333% - 16px);background:#FFFFFF;border:1px solid var(--ss-border);border-radius:16px;
  box-shadow:var(--ss-shadow-1);overflow:hidden;padding:0;
}
@media (max-width:1023px){html body ul.products li.product{width:calc(50% - 12px)}}
@media (max-width:639px){html body ul.products li.product{width:100%}}
html body ul.products li.product .image_frame,
html body ul.products li.product a img{aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:0}
html body ul.products li.product .desc, html body ul.products li.product .entry-summary{display:flex;flex-direction:column;flex:1;padding:16px 20px 20px}
html body ul.products li.product .price{margin-top:auto;padding-top:12px}

/* QA38: Warenkorb Mengenauswahl kompakt + Meta lesbar; kein Bildzoom */
html body.woocommerce-cart .quantity, html body .wc-block-components-quantity-selector{
  display:inline-flex;align-items:center;gap:0;border:1px solid var(--ss-border);border-radius:8px;overflow:hidden;max-width:140px
}
html body.woocommerce-cart .quantity .qty,
html body .wc-block-components-quantity-selector input{width:48px;text-align:center;border:0;font-size:16px}
html body .wc-block-components-product-metadata, html body .wc-block-components-product-details{font-size:14px;color:var(--ss-muted);line-height:1.45}
html body ul.products li.product:hover .image_frame img,
html body ul.products li.product:hover img,
html body .woocommerce div.product div.images img:hover,
html body .image_frame:hover .image_wrapper img,
html body .image_frame .image_wrapper img,
html body .woocommerce-product-gallery__image img{
  transform:none !important;scale:none !important;
}
html body .image_frame .image_wrapper, html body .image_frame{overflow:hidden}

/* Sticky-Leiste: Schatten und Logo-Höhe kommen von Betheme (Live: ca. 61px, Logo 35px). */

/* Fokus-Zustände */
html body a:focus-visible, html body button:focus-visible, html body .button:focus-visible,
html body input:focus-visible, html body select:focus-visible, html body textarea:focus-visible{
  outline:2px solid var(--ss-green);outline-offset:2px;
}

/* === Shop-Facelift: Kopf, Kategorie-Band, Produktkarten === */
html body.woocommerce-shop .page-title,
html body.post-type-archive-product .page-title,
html body.woocommerce-shop h1.title,
html body #Content h1.title{font-size:40px;font-weight:700;line-height:1.15;color:var(--ss-ink);margin:0 0 12px}
html body .ss-shop-intro{font-size:17px;line-height:1.5;color:var(--ss-muted);margin:0 0 32px}

html body .ss-cat-band{margin:0 0 32px;overflow:hidden}
html body .ss-cat-band__title{margin:0 0 16px !important;font-size:22px !important;line-height:1.2 !important;font-weight:700 !important;color:#252525 !important;letter-spacing:0 !important}
html body .ss-cat-band__track{display:flex;flex-wrap:nowrap;gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px;width:100%;max-width:100%}
html body .ss-cat-tile{flex:0 0 300px;max-width:300px;scroll-snap-align:start}
html body .ss-cat-tile{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit;border-radius:16px;padding:0;outline-offset:4px;transition:box-shadow .2s ease}
html body .ss-cat-tile:hover{box-shadow:var(--ss-shadow-2)}
html body .ss-cat-tile.is-active{outline:2px solid var(--ss-green);outline-offset:4px}
html body .ss-cat-tile__img{display:block;width:100%;aspect-ratio:4/3;border-radius:16px;background:#EAF3EC center/cover no-repeat}
html body .ss-cat-tile__name{font-size:20px;font-weight:600;color:var(--ss-ink);line-height:1.2}
html body .ss-cat-tile__count{font-size:14px;color:var(--ss-muted);line-height:1.3}
@media (max-width:767px){
  html body .ss-cat-tile{flex-basis:78vw;max-width:78vw}
}

html body ul.products li.product{
  position:relative;background:#FFFFFF;border:1px solid #E2E7E3;border-radius:16px;
  box-shadow:var(--ss-shadow-1);overflow:hidden;display:flex;flex-direction:column;
}
html body ul.products li.product .image_frame,
html body ul.products li.product a img,
html body ul.products li.product .attachment-woocommerce_thumbnail{
  aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:0;transform:none !important;
}
html body ul.products li.product .desc,
html body ul.products li.product .mfn-li-product-row:not(.mfn-li-product-row-image){padding:20px;display:flex;flex-direction:column;flex:1;gap:8px}
html body ul.products li.product .woocommerce-loop-product__title,
html body ul.products li.product h3, html body ul.products li.product .title{font-size:18px;font-weight:600;color:var(--ss-ink);margin:0}
html body .ss-card-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}
html body .ss-chip{display:inline-flex;align-items:center;font-size:12px;font-weight:500;padding:4px 10px;border-radius:999px;background:#EAF3EC;color:var(--ss-green)}
html body .ss-card-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:16px;border-top:1px solid #E2E7E3}
html body ul.products li.product .price{font-size:22px;font-weight:700;color:var(--ss-ink);margin:0}
html body ul.products li.product .price .woocommerce-Price-amount{font-size:22px;font-weight:700}
html body ul.products li.product .price del{font-size:14px;color:var(--ss-muted)}
html body .ss-card-arrow{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--ss-green);color:#fff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:18px;line-height:1}
html body .ss-card-arrow:hover{background:var(--ss-green-dark);color:#fff}
/* ganze Karte klickbar ohne Layout-Shift */
html body ul.products li.product > a.woocommerce-LoopProduct-link{display:block}
html body ul.products.columns-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
html body ul.products.columns-3::before, html body ul.products.columns-3::after{display:none !important;content:none !important}
html body ul.products.columns-3 li.product{width:auto !important;margin:0 !important;float:none !important}
@media (max-width:1023px){html body ul.products.columns-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:639px){html body ul.products.columns-3{grid-template-columns:1fr}}

@media (max-width:767px){
  html body .mcb-item-cz6w87s a.button{min-width:0 !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important}
}

/* Produkt-Buchen wie Live: Menge und Button im Betheme-Flow, keine Extra-Karte. */
html body.single-product .mfn-product-add-to-cart .price,
html body.single-product .ssck-fields + .price,
html body.single-product form.cart .price{font-size:28px;font-weight:700;color:var(--ss-ink);line-height:1.2}
html body.single-product form.cart .single_add_to_cart_button,
html body.single-product .mfn-product-add-to-cart .button{
  min-height:48px;height:48px;line-height:48px;padding:0 24px;border-radius:8px;font-size:16px;font-weight:700;
}
html body.single-product form.cart .single_add_to_cart_button.ssck-blocked,
html body.single-product form.cart .single_add_to_cart_button:disabled,
html body.single-product form.cart .single_add_to_cart_button.disabled{
  background-color:#027B35 !important;border-color:#027B35 !important;color:#FFFFFF !important;opacity:.45;cursor:not-allowed;box-shadow:none !important;
}

/* Galerie 16:10, Thumbs 88x66, kein Zoom/Lightbox-Animation */
html body.single-product .woocommerce-product-gallery{
  border-radius:16px;overflow:hidden;box-shadow:var(--ss-shadow-1);max-width:100%;
}
html body.single-product .woocommerce-product-gallery__wrapper,
html body.single-product .woocommerce-product-gallery__image{
  border-radius:16px;overflow:hidden;
}
html body.single-product .woocommerce-product-gallery__image img,
html body.single-product .woocommerce-product-gallery .wp-post-image{
  aspect-ratio:16/10;object-fit:cover;width:100%;height:auto;border-radius:16px;
  transform:none !important;transition:none !important;
}
html body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger{display:none !important} /* Zoom-Icon weg */
html body.single-product .flex-control-thumbs,
html body.single-product .flex-control-nav.flex-control-thumbs,
html body.single-product ol.flex-control-nav{
  display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;
}
html body.single-product .flex-control-thumbs li,
html body.single-product ol.flex-control-nav li{
  width:88px !important;height:66px !important;margin:0 !important;float:none !important;
  border-radius:8px;overflow:hidden;box-sizing:border-box;border:2px solid transparent;
}
html body.single-product .flex-control-thumbs li img,
html body.single-product ol.flex-control-nav li img{
  width:88px !important;height:66px !important;object-fit:cover;border-radius:8px;opacity:1;transform:none !important;
}
html body.single-product .flex-control-thumbs li.flex-active,
html body.single-product ol.flex-control-nav li.flex-active,
html body.single-product .flex-control-thumbs li img.flex-active{
  border-color:#027B35;outline:2px solid #027B35;outline-offset:0;border-radius:8px;
}

/* Mobil sticky Bottom-Bar */
html body.single-product .ss-sticky-book{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:10050;
  height:72px;padding:0 16px;box-sizing:border-box;
  background:#FFFFFF;border-top:1px solid #E2E7E3;box-shadow:var(--ss-shadow-3);
  align-items:center;justify-content:space-between;gap:12px;
}
html body.single-product .ss-sticky-book.is-visible{display:flex}
html body.single-product .ss-sticky-book__price{font-size:18px;font-weight:700;color:var(--ss-ink);line-height:1.2}
html body.single-product .ss-sticky-book__price small{font-size:13px;font-weight:500;color:var(--ss-muted)}
html body.single-product .ss-sticky-book__btn{
  flex:0 0 auto;min-width:148px;height:48px;padding:0 20px;border:0;border-radius:8px;
  background:#027B35;color:#FFFFFF;font-size:15px;font-weight:700;cursor:pointer;
}
html body.single-product .ss-sticky-book__btn:hover{background:#01602A}
@media (min-width:1024px){html body.single-product .ss-sticky-book{display:none !important}}
@media (max-width:1023px){
  html body.single-product .column_product_cart_button{position:static;width:100%;max-width:100%}
  html body.single-product{padding-bottom:88px} /* Platz für Bar */
}

/* Hero bei 1024: Slider positioniert den Button selbst. */

/* Filter mobil Bottom Sheet */
@media (max-width:767px){
  html body.woocommerce-shop .mfn-woo-filters-wrapper.shop-filters,
  html body.archive.woocommerce .mfn-woo-filters-wrapper.shop-filters,
  html body.post-type-archive-product .mfn-woo-filters-wrapper.shop-filters{
    position:fixed !important;left:0;right:0;bottom:0;top:auto !important;
    width:100% !important;max-height:85vh;overflow:auto;
    display:none;z-index:10060;background:#FFFFFF;
    border-radius:16px 16px 0 0;box-shadow:0 -8px 32px rgba(0,0,0,.18);
    padding:20px 16px 32px;box-sizing:border-box;
  }
  html body.woocommerce-shop .mfn-woo-filters-wrapper.shop-filters.is-open,
  html body.archive.woocommerce .mfn-woo-filters-wrapper.shop-filters.is-open,
  html body.post-type-archive-product .mfn-woo-filters-wrapper.shop-filters.is-open{
    display:block !important;
  }
  html body .ss-filter-sheet-backdrop{
    display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:10055;
  }
  html body .ss-filter-sheet-backdrop.is-open{display:block}
  html body .ss-filter-open{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    height:48px;padding:0 20px;margin:0 0 16px;border:1px solid #E2E7E3;border-radius:8px;
    background:#FFFFFF;color:var(--ss-ink);font-size:15px;font-weight:600;cursor:pointer;
    box-shadow:var(--ss-shadow-1);
  }
}
@media (min-width:768px){html body .ss-filter-open, html body .ss-filter-sheet-backdrop{display:none !important}}

/* Cart/Checkout Stepper + Meta (QA38) final */
html body .wc-block-components-quantity-selector{
  display:inline-flex !important;align-items:center;border:1px solid #E2E7E3;border-radius:8px;
  overflow:hidden;max-width:140px;min-height:40px;background:#fff;
}
html body .wc-block-components-quantity-selector__button{width:40px;height:40px;border:0;background:transparent;font-size:18px}
html body .wc-block-components-quantity-selector__input,
html body .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{
  width:48px !important;min-width:48px;border:0 !important;text-align:center;font-size:16px;box-shadow:none !important
}
html body .wc-block-components-product-metadata__description,
html body .wc-block-components-product-details__name,
html body .wc-block-cart-item__product .wc-block-components-product-metadata{font-size:14px !important;color:#5C635E;line-height:1.45;overflow-wrap:anywhere}
html body.woocommerce-cart .woocommerce-Price-amount + .woocommerce-Price-currencyLabel,
html body .wc-block-components-product-price__value .woocommerce-Price-currencyLabel{display:none}


/* === Polish 01:50: Listen-Häkchen, Filter, Cookie, Kontrast === */
/* Produktlisten: Icon links, Text mit Abstand — kein Überlappen */
html body #Content ul.list_custom > li,
html body.single-product .column_column:has(ul.list_custom) ul.list_custom li,
html body #Content ul.list_check > li{
  position:relative;
  padding:10px 0 10px 36px !important;
  border-bottom:1px solid var(--ss-border);
  list-style:none;
}
html body #Content ul.list_custom > li:last-child,
html body.single-product .column_column:has(ul.list_custom) ul.list_custom li:last-child{border-bottom:0}
html body #Content ul.list_custom li > i,
html body #Content ul.list_custom li > i.icon-minus,
html body #Content ul.list_custom li > i.fa-check,
html body #Content ul.list_check li:before{
  position:absolute !important;
  left:0 !important;top:12px !important;right:auto !important;
  width:18px !important;height:18px !important;margin:0 !important;padding:0 !important;
  font-size:18px !important;line-height:18px !important;
  color:#027B35 !important; /* statt Theme #0da122 / Inline */
  display:inline-flex;align-items:center;justify-content:center;
}
html body #Content ul.list_custom li > i::before{color:#027B35 !important}
html body #Content ul.list_custom > li::after,
html body #Content ul.list_check > li::after{content:none !important}

/* Mobil: nur unser Filter-Button, Betheme-Native ausblenden */
@media (max-width:767px){
  html body.woocommerce-shop .mfn-woo-list-filters-button,
  html body.woocommerce-shop .filters-button,
  html body.woocommerce-shop a.mfn-woo-filters-open,
  html body.woocommerce-shop .open-filters,
  html body.archive.woocommerce .mfn-woo-list-filters-button,
  html body.post-type-archive-product .mfn-woo-list-filters-button,
  html body .woocommerce .mfn-woo-filters-wrapper > .filters-button,
  html body .shop-filters-toggle,
  html body button.mfn-woo-filters-button,
  html body .extras .mfn-woo-filters-button{
    display:none !important;
  }
  html body .ss-filter-open{display:inline-flex !important;width:100%;max-width:100%;height:48px;margin:0 0 16px}
}

/* Cookie Bottom-Sheet Feinschliff */
@media (max-width:767px){
  html body #BorlabsCookieBox .brlbs-cmpnt-dialog,
  html body #BorlabsCookieBox [role="dialog"],
  html body #BorlabsCookieBox .brlbs-box,
  html body #BorlabsCookieBox ._brlbs-bar,
  html body #BorlabsCookieBox .brlbs-cmpnt-box{
    max-height:60vh !important;overflow:auto !important;
    border-radius:16px 16px 0 0 !important;
    position:fixed !important;left:0 !important;right:0 !important;bottom:0 !important;top:auto !important;
    width:100% !important;max-width:100% !important;margin:0 !important;
    box-shadow:0 -8px 32px rgba(0,0,0,.18) !important;
  }
  html body #BorlabsCookieBox .brlbs-btn,
  html body #BorlabsCookieBox button.brlbs-btn,
  html body #BorlabsCookieBox a.brlbs-btn,
  html body #BorlabsCookieBox button[class*="accept"]{
    background-color:#027B35 !important;border-color:#027B35 !important;color:#FFFFFF !important;
    border-radius:8px !important;min-height:44px;
  }
  html body #BorlabsCookieBox button[class*="essential"],
  html body #BorlabsCookieBox .brlbs-btn-accept-only-essential,
  html body #BorlabsCookieBox a[class*="essential"]{
    background:#FFFFFF !important;color:#027B35 !important;border:2px solid #027B35 !important;
  }
}

/* Kontrast-Reste: nie Gelb auf Weiß als Text; auf Grün nur Weiß */
html body .widget .widgettitle,
html body .widget h3,
html body aside .widget-title,
html body .woocommerce .widget .widget-title{
  color:#252525;
}
/* Gelbe Buttons: dunkle Schrift nur wenn der Button selbst gelb ist. Übrige Buttonfarben kommen aus Betheme. */
html body .button[style*="DDD40E"],
html body a.button[style*="DDD40E"]{
  color:#252525 !important;
}
html body .ss-native-filter-hide{display:none !important}

/* Listen-Text linksbündig — Icon + Text sauber, nicht zentriert mit Luft */
html body #Content ul.list_custom,
html body #Content ul.list_check,
html body #Content ul.list_custom > li,
html body #Content ul.list_check > li,
html body.single-product .column_column:has(ul.list_custom) ul.list_custom,
html body.single-product .column_column:has(ul.list_custom) ul.list_custom li{
  text-align:left !important;
}
html body #Content ul.list_custom > li,
html body #Content ul.list_check > li{
  padding-right:8px !important;
}

/* === QA Runde 2 + Design Bot 23.10.2026 02:00 === */

/* N1: Buchen disabled — Text vollständig, kein Clipping */
html body.single-product form.cart .single_add_to_cart_button,
html body.single-product .mfn-product-add-to-cart .button,
html body.single-product #ss-sticky-book .ss-sticky-book__btn{
  white-space:nowrap !important;
  overflow:visible !important;
  min-height:48px !important;
  height:auto !important;
  max-height:none !important;
  padding:14px 20px !important;
  line-height:1.2 !important;
  font-size:16px !important;
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  max-width:100% !important;
}
html body.single-product form.cart .single_add_to_cart_button.ssck-blocked,
html body.single-product form.cart .single_add_to_cart_button:disabled,
html body.single-product form.cart .single_add_to_cart_button[disabled],
html body.single-product form.cart .single_add_to_cart_button.disabled{
  background-color:#027B35 !important;
  border-color:#027B35 !important;
  color:#FFFFFF !important;
  opacity:.45 !important;
  cursor:not-allowed !important;
  box-shadow:none !important;
  filter:none !important;
}
@media (max-width:420px){
  html body.single-product form.cart .single_add_to_cart_button,
  html body.single-product .mfn-product-add-to-cart .button{
    font-size:15px !important;padding:14px 16px !important;
  }
}

/* #9 / Hero SR-Tops — DEAKTIVIERT 23.10 home-restore (nativer Slider). */


/* Sticky-Header Design Bot entfernt: Live-Logik (transparent, dann kompakte Leiste). */

/* N2 News layout — DEAKTIVIERT 23.10 home-restore */


/* #11 Kontakt-Hero: alles Weiß auf Grün */
html body.ss-page-kontakt #Content .mcb-section:first-child,
html body.ss-page-kontakt #Content .mcb-section:first-child :is(h1,h2,h3,h4,p,span,a:not(.button),li,.highlight,.highlight-word){
  color:#FFFFFF !important;
}
html body.ss-page-kontakt #Content .mcb-section:first-child .highlight-border{
  background-color:#DDD40E !important; /* gelber Unterstrich ok */
}

/* Pricing Slider „1/4“: unter Bild rechts, 14px muted, Pfeile daneben */
html body .offer .slider_pagination,
html body .flat_booked .slider_pagination,
html body .offer .swiper-pagination,
html body .mfn-offer-slider .swiper-pagination,
html body .offers_group .slider_pagination{
  position:static !important;
  display:flex !important;align-items:center;justify-content:flex-end;gap:8px;
  margin:12px 12px 0 auto !important;
  font-size:14px !important;line-height:1.4 !important;
  color:#5C635E !important;background:transparent !important;
  left:auto !important;right:12px !important;bottom:auto !important;
  width:auto !important;box-shadow:none !important;border:0 !important;
}
html body .offer .slider_pagination a,
html body .offer .slider_pagination .button,
html body .offer .offer_li .slider_pagination *{
  color:#5C635E !important;font-size:14px !important;
}
html body .offer_li .image_wrapper,
html body .offer .image_wrapper{position:relative;margin-bottom:0}
html body .offer .slider_nav,
html body .offer .slider_prev,
html body .offer .slider_next,
html body .offer .nav-arrows{
  position:static !important;display:inline-flex;gap:8px;margin-top:12px;
}

/* N3: doppelter Preis in Cart-Card — nur einen zeigen */
html body.woocommerce-cart .wc-block-cart-item__prices .price:nth-child(n+2),
html body.woocommerce-cart .wc-block-cart-item__total + .wc-block-cart-item__prices,
html body.woocommerce-cart .wc-block-components-product-price__regular + .wc-block-components-product-price__value,
html body.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__total .wc-block-components-product-price{
  /* keep line total */
}
html body.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name + .wc-block-components-product-price,
html body.woocommerce-cart .wc-block-cart-item__wrap .wc-block-components-product-price:first-of-type{
  display:none !important; /* Zeilenpreis unter Titel aus; Total-Spalte bleibt */
}
html body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price{
  display:block !important;
}

/* #38 / N3 Gesamtsumme: kein zweites „EUR“ */
html body.woocommerce-cart .woocommerce-Price-currencyLabel,
html body.woocommerce-checkout .woocommerce-Price-currencyLabel,
html body .wc-block-components-product-price .woocommerce-Price-currencyLabel,
html body .wc-block-components-totals-item .woocommerce-Price-currencyLabel,
html body .wc-block-formatted-money-amount + .woocommerce-Price-currencyLabel,
html body .wc-block-components-totals-footer-item .woocommerce-Price-currencyLabel{
  display:none !important;
}
html body.woocommerce-cart .wc-block-components-totals-item__value,
html body.woocommerce-cart .wc-block-components-totals-footer-item-tax-value,
html body.woocommerce-cart .wc-block-formatted-money-amount{
  font-variant-ligatures:none;
}

/* N4: keine Bullets vor Apple/Google Pay */
html body.woocommerce-cart .wc-block-components-express-payment,
html body.woocommerce-cart .wc-block-components-express-payment ul,
html body.woocommerce-cart .wc-block-components-express-payment__event-buttons,
html body.woocommerce-cart .wcpay-express-checkout-wrapper,
html body.woocommerce-cart #wcpay-express-checkout-element,
html body.woocommerce-checkout .wc-block-components-express-payment ul{
  list-style:none !important;margin:0 !important;padding:0 !important;
  display:flex !important;flex-wrap:wrap;gap:12px !important;
}
html body.woocommerce-cart .wc-block-components-express-payment li,
html body.woocommerce-cart .wc-block-components-express-payment__event-buttons > *,
html body.woocommerce-cart .wcpay-express-checkout-wrapper li,
html body.woocommerce-checkout .wc-block-components-express-payment li{
  list-style:none !important;margin:0 !important;padding:0 !important;
}
html body.woocommerce-cart .wc-block-components-express-payment li::before,
html body.woocommerce-cart .wc-block-components-express-payment li::marker,
html body.woocommerce-cart .wcpay-express-checkout-wrapper li::before{
  content:none !important;display:none !important;
}
html body.woocommerce-cart .wc-block-components-express-payment__title,
html body.woocommerce-cart .wc-block-components-express-payment-continue-rule{
  font-size:14px !important;color:#5C635E !important;font-weight:500;
}

/* #8 Kategorien-Zähler: plain „10 / Swift Stops“ wie Counter stylen */
html body.ss-page-kategorien .mcb-wrap .column_attr:has(> p),
html body .mcb-wrap-34602186c .column_attr,
html body .mcb-item-0a4a6bce2 .column_attr{
  color:#FFFFFF !important;
}
html body .mcb-wrap-34602186c .column_attr > p:first-child,
html body .mcb-item-0a4a6bce2 .column_attr > p:first-child,
html body.ss-page-kategorien .mcb-section .column_attr > p:first-of-type:not(:only-child){
  font-family:Poppins,Arial,sans-serif !important;
  font-size:48px !important;line-height:1 !important;font-weight:700 !important;
  color:#FFFFFF !important;margin:0 !important;
}
html body .mcb-wrap-34602186c .column_attr > p:last-child,
html body .mcb-item-0a4a6bce2 .column_attr > p:last-child{
  font-family:Poppins,Arial,sans-serif !important;
  font-size:14px !important;font-weight:500 !important;color:rgba(255,255,255,.7) !important;margin:0 !important;
}
html body .mcb-wrap-34602186c .column_attr > p:nth-child(2),
html body .mcb-item-0a4a6bce2 .column_attr > p:nth-child(2){
  display:none !important; /* leerer &nbsp; Spacer */
}

/* #43 Restgrüne → #027B35 / Hover #01602A */
html body, html body *{
  /* targeted overrides below — avoid universal color rewrite */
}
html body [style*="#0DA122"], html body [style*="#0da122"],
html body [style*="0DA122"], html body [style*="0da122"]{
  /* can't strip inline easily; force common widgets */
}
html body .icon-check, html body .icon-ok, html body ul.list_check li:before,
html body .woocommerce-message::before,
html body .widget_shopping_cart .button,
html body #BorlabsCookieBox, html body #BorlabsCookieBox .brlbs-btn,
html body #BorlabsCookieBox button[class*="accept"]{
  --ss-force-green:#027B35;
}
html body #BorlabsCookieBox .brlbs-cmpnt-dialog,
html body #BorlabsCookieBox [style*="0E6A27"],
html body #BorlabsCookieBox [style*="0e6a27"]{
  border-color:#027B35 !important;
}
html body #BorlabsCookieBox .brlbs-btn,
html body #BorlabsCookieBox button.brlbs-btn,
html body #BorlabsCookieBox a.brlbs-btn,
html body #BorlabsCookieBox button[class*="accept"]{
  background-color:#027B35 !important;border-color:#027B35 !important;color:#FFFFFF !important;
}
/* Theme-Grün-Reste */
html body .themecolor, html body .themecolor-bg,
html body a.themecolor, html body .accent-color{color:#027B35 !important}
html body .themecolor-bg, html body .accent-bg{background-color:#027B35 !important}

/* === QA Runde 3: Hero-Grid + News + Kategorien sticky (Design Bot) === */

/* QA Runde 3 ss-hero Header/SR-Hide — DEAKTIVIERT 23.10 home-restore */

/* N2 News highlight overrides — DEAKTIVIERT 23.10 home-restore */

/* N3-R3 Kategorien: Sticky schneidet Titel nicht an */
html body.ss-page-kategorien #Content,
html body.ss-page-kategorien #Content .mcb-section:first-child{
  scroll-margin-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px));
  padding-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px)) !important;
}
html body.ss-page-kategorien #Content .mcb-section:first-child :is(h1,h2,h3),
html body.ss-page-kategorien #Content h1, html body.ss-page-kategorien #Content h2{
  scroll-margin-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px));
}
html body.admin-bar{ --ss-adminbar:32px; }
@media (max-width:782px){ html body.admin-bar{ --ss-adminbar:46px; } }

/* Zähler 3 und 10 gleich (Design Bot: Icon 72×72 r16, Zahl 48/700, Label 14/.7, gap 16) */
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap.one-third .counter-inline .number,
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap.one-third .google_font .number,
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap-34602186c .column_attr > p:first-child,
html body.ss-page-kategorien #Content .mcb-section .mcb-item-0a4a6bce2 .column_attr > p:first-child,
html body.ss-page-kategorien #Content .mcb-section .column_attr > p:first-of-type:not(:only-child){
  font-family:Poppins,Arial,sans-serif !important;
  font-size:48px !important;font-weight:700 !important;line-height:1 !important;
  color:#FFFFFF !important;margin:0 !important;
}
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap.one-third .column_attr h4,
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap-34602186c .column_attr > p:last-child,
html body.ss-page-kategorien #Content .mcb-section .mcb-item-0a4a6bce2 .column_attr > p:last-child,
html body.ss-page-kategorien #Content .mcb-section .counter .title{
  font-family:Poppins,Arial,sans-serif !important;
  font-size:14px !important;font-weight:500 !important;color:rgba(255,255,255,.7) !important;
  margin:0 !important;
}
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap.one-third{
  display:flex !important;align-items:center !important;gap:16px !important;
}
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap.one-third .column_image img,
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap.one-third .image_frame img,
html body.ss-page-kategorien #Content .mcb-section .mcb-wrap.one-third img{
  width:72px !important;height:72px !important;max-width:72px !important;max-height:72px !important;
  object-fit:contain !important;border-radius:16px !important;
}

/* === QA Runde 4: N3-R3 sticky cut + N1-R4 EUR-Format === */

/* N3-R3: Sticky + 48px (+ Adminbar) — „Wir starten durch“ nicht anschneiden */
html:has(body.ss-page-kategorien){
  scroll-padding-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px));
}
html body.ss-page-kategorien #Content,
html body.ss-page-kategorien #Content .mcb-section:first-child{
  scroll-margin-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px));
  padding-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px)) !important;
}
html body.ss-page-kategorien #Content .mcb-section,
html body.ss-page-kategorien #Content .mcb-section :is(h1,h2,h3),
html body.ss-page-kategorien #Content h1,
html body.ss-page-kategorien #Content h2,
html body.ss-page-kategorien #Content h3{
  scroll-margin-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px));
}
/* Grüne Sektionen: Header + 48 */
html body.ss-page-kategorien #Content .mcb-section[style*="027B35" i],
html body.ss-page-kategorien #Content .mcb-section[style*="background-color:#027B35" i]{
  scroll-margin-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px));
  padding-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px)) !important;
}

/* N1-R4: Woo „EUR“-Suffix ausblenden (Format „11,90 €“ kommt aus JS-Scrub) */
html body.woocommerce-cart .woocommerce-Price-currencyLabel,
html body.woocommerce-checkout .woocommerce-Price-currencyLabel,
html body .woocommerce-Price-currencyLabel,
html body .wc-block-components-product-price .woocommerce-Price-currencyLabel,
html body .wc-block-components-totals-item .woocommerce-Price-currencyLabel,
html body .wc-block-components-totals-footer-item .woocommerce-Price-currencyLabel,
html body .wc-block-formatted-money-amount + .woocommerce-Price-currencyLabel{
  display:none !important;
  font-size:0 !important;width:0 !important;height:0 !important;overflow:hidden !important;
}

/* === Abnahme-Polish 05:30: MUSS 06/10/05 (+ optional Header/Sticky) === */

/* Buchungszeile wie Live: Menge links, grüner Button daneben. */
html body.single-product form.cart{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  gap:12px !important;
  width:100% !important;
  max-width:100% !important;
}
html body.single-product form.cart .quantity{
  width:auto !important;
  max-width:none !important;
  flex:0 0 auto !important;
}
html body.single-product form.cart .single_add_to_cart_button{
  width:auto !important;
  max-width:none !important;
  flex:1 1 auto !important;
  min-height:48px !important;
  height:auto !important;
  white-space:nowrap !important;
}
html body.single-product #ss-sticky-book .ss-sticky-book__btn{
  white-space:nowrap !important;
  min-height:48px !important;
}
@media (max-width:767px){
  html body.single-product .mfn-product-add-to-cart,
  html body.single-product form.cart,
  html body.single-product .ssck-fields{
    max-width:100% !important;
    box-sizing:border-box;
  }
  html body.single-product form.cart{
    flex-direction:column !important;
    flex-wrap:wrap !important;
    align-items:stretch !important;
  }
  html body.single-product form.cart .quantity,
  html body.single-product form.cart .single_add_to_cart_button{
    width:100% !important;
    max-width:100% !important;
    flex:1 1 auto !important;
    white-space:normal !important;
  }
  html body.single-product .ssck-grid{
    grid-template-columns:1fr !important;
  }
}
html body.single-product form.cart .single_add_to_cart_button.ssck-blocked,
html body.single-product form.cart .single_add_to_cart_button:disabled,
html body.single-product form.cart .single_add_to_cart_button[disabled],
html body.single-product form.cart .single_add_to_cart_button.disabled{
  background-color:#027B35 !important;
  border-color:#027B35 !important;
  color:#FFFFFF !important;
  opacity:.45 !important;
  cursor:not-allowed !important;
  box-shadow:none !important;
  filter:none !important;
}

/* --- 10 Warenkorb: Preis nur einmal (Titelzeile behalten ODER Total — nicht beides) --- */
html body.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__wrap .wc-block-components-product-price,
html body.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name + .wc-block-components-product-price,
html body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-price,
html body.woocommerce-cart .wc-block-cart-item__prices,
html body.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__wrap > .wc-block-components-product-price{
  display:none !important;
}
/* Eine sichtbare Preisstelle: Spalte Total (Desktop) bzw. nach Quantity auf Mobil oft total */
html body.woocommerce-cart .wc-block-cart-item__total,
html body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price,
html body.woocommerce-cart .wc-block-cart-item__total .wc-block-formatted-money-amount{
  display:block !important;
}
/* Falls Total-Spalte mobil in wrap steckt: zeige genau einen Price im Row-Footer */
@media (max-width:781px){
  html body.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__total{
    display:block !important;
  }
  /* Preis neben dem Titel (häufig absolute/rechts) aus */
  html body.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__product .wc-block-components-product-price,
  html body.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__wrap .wc-block-components-product-price{
    display:none !important;
  }
}

/* --- 05 Shop Kategorie-Band mobil: Label 12px unter Bild, nicht auf dem Bild --- */
html body .ss-cat-tile{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:12px !important;
  position:relative !important;
}
html body .ss-cat-tile__img{
  position:relative !important;
  display:block !important;
  width:100% !important;
  aspect-ratio:4/3 !important;
  border-radius:16px !important;
  background-color:#EAF3EC !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center 20% !important; /* eingebackene Pill am unteren Bildrand weniger sichtbar */
  overflow:hidden !important;
}
html body .ss-cat-tile__name,
html body .ss-cat-tile__count{
  position:static !important;
  display:block !important;
  float:none !important;
  margin:0 !important;
  transform:none !important;
  inset:auto !important;
  left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;
}
html body .ss-cat-tile__name{
  font-size:18px !important;
  font-weight:600 !important;
  color:#252525 !important;
  line-height:1.2 !important;
  padding:0 !important;
  background:transparent !important;
}
@media (max-width:767px){
  html body .ss-cat-tile{gap:12px !important}
  /* Unteren Streifen der Illustration abdecken (eingebackene „Swiftstop …“-Pill) */
  html body .ss-cat-tile__img::after{
    content:"" !important;
    position:absolute !important;
    left:0; right:0; bottom:0;
    height:22% !important;
    background:linear-gradient(to bottom, rgba(234,243,236,0), #EAF3EC 70%) !important;
    pointer-events:none !important;
    border-radius:0 0 16px 16px;
  }
  html body .ss-cat-tile__img{
    background-position:center top !important;
    background-size:115% auto !important;
  }
}

/* Optional: Header-Betrag „0,00 €“ (Symbol rechts) — Scrub ergänzt JS; CSS-Hinweis */
html body #Top_bar #header_cart .woocommerce-Price-currencyLabel{
  display:none !important;
}

/* Optional: Cart sticky CTA schneidet Summe nicht an */
html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
html body.woocommerce-cart .wc-block-cart__sidebar,
html body.woocommerce-cart .wc-block-components-totals-wrapper{
  padding-bottom:96px !important;
}
@media (min-width:782px){
  html body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block,
  html body.woocommerce-cart .wc-block-cart__sidebar,
  html body.woocommerce-cart .wc-block-components-totals-wrapper{
    padding-bottom:24px !important;
  }
}

/* Optional: Kategorien sticky etwas mehr Luft (bereits 48; +tiny) */
html body.ss-page-kategorien #Content .mcb-section :is(h1,h2,h3){
  scroll-margin-top:calc(var(--ss-sticky-h, 64px) + 48px + var(--ss-adminbar, 0px)) !important;
}


/* === s21 23.10. ~06:23: Filter mobil oben + Pill weg; optional Cart-Preis nowrap === */

/* 1+2) Mobil: WC „Produkte filtern“ als klarer Vollbreiten-Button OBERHALB der Produktliste.
   Ursache Pill: Widget-/Filter-Karten-Styles (padding/bg/shadow) um den Overlay-Trigger. */
@media (max-width:767px){
  /* Sidebar bleibt vor der Produktliste (order bereits -1) */
  html body.woocommerce .content_wrapper,
  html body.archive.woocommerce .content_wrapper,
  html body.post-type-archive-product .content_wrapper{
    display:flex !important;
    flex-direction:column !important;
  }
  html body.woocommerce .sidebar,
  html body.woocommerce-page .sidebar,
  html body.archive.woocommerce .mcb-sidebar,
  html body.post-type-archive-product .mcb-sidebar,
  html body.archive.woocommerce aside.sidebar{
    order:-1 !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 16px !important;
  }
  html body.woocommerce .sections_group,
  html body.archive.woocommerce .sections_group,
  html body.post-type-archive-product .sections_group{
    order:0 !important;
  }

  /* Leeren Betheme-Filter-Button ausblenden (Sheet ist leer; WC-Block ist die echte Filter-UI) */
  html body .ss-filter-open{
    display:none !important;
  }

  /* Widget-Karte um den Mobile-Overlay-Trigger entfernen */
  html body.archive.woocommerce .widget-area .widget.widget_block:has(.wc-block-product-filters.is-mobile-overlay),
  html body.post-type-archive-product .widget-area .widget.widget_block:has(.wc-block-product-filters.is-mobile-overlay),
  html body.woocommerce-shop .widget-area .widget.widget_block:has(.wc-block-product-filters.is-mobile-overlay),
  html body .widget-area .widget:has(> .wc-block-product-filters.is-mobile-overlay){
    background:transparent !important;
    background-image:none !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:0 0 16px !important;
    border-radius:0 !important;
  }

  /* Filter-Block selbst: keine Karten-Chrome im geschlossenen Overlay-Modus */
  html body .widget-area .wp-block-woocommerce-product-filters.is-mobile-overlay,
  html body .wc-block-product-filters.is-mobile-overlay.wp-block-woocommerce-product-filters,
  html body .wc-block-product-filters.is-mobile-overlay{
    background:transparent !important;
    background-image:none !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:0 !important;
    display:flex !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    height:auto !important;
    inline-size:100% !important;
  }

  /* Der eigentliche Button: einfarbig weiß, Text #252525, kein zweiter Label-BG */
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay,
  html body button.wc-block-product-filters__open-overlay{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    width:100% !important;
    max-width:100% !important;
    min-height:48px !important;
    height:48px !important;
    padding:0 20px !important;
    margin:0 !important;
    border:1px solid #E2E7E3 !important;
    border-radius:8px !important;
    background:#FFFFFF !important;
    background-color:#FFFFFF !important;
    background-image:none !important;
    color:#252525 !important;
    font-size:15px !important;
    font-weight:600 !important;
    line-height:1.2 !important;
    box-shadow:none !important;
    overflow:visible !important;
    white-space:nowrap !important;
    -webkit-appearance:none !important;
    appearance:none !important;
  }
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay:hover,
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay:focus,
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay:active{
    background:#FFFFFF !important;
    background-image:none !important;
    color:#252525 !important;
    box-shadow:none !important;
  }
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay::before,
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay::after{
    content:none !important;
    display:none !important;
    background:none !important;
    box-shadow:none !important;
  }
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay span,
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay > span{
    background:transparent !important;
    background-image:none !important;
    background-color:transparent !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    color:inherit !important;
    display:inline !important;
    line-height:inherit !important;
  }
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay span::before,
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay span::after{
    content:none !important;
    display:none !important;
  }
  html body .wc-block-product-filters.is-mobile-overlay .wc-block-product-filters__open-overlay svg{
    flex:0 0 auto;
    width:20px;height:20px;
    background:transparent !important;
  }

  /* Overlay-Dialog bleibt normale Filter-UI (weiße Fläche) */
  html body .wc-block-product-filters__overlay-dialog{
    background:#FFFFFF !important;
  }
}

/* Optional: Warenkorb-Zeilenpreis nicht umbrechen */
html body .wc-block-cart-items .wc-block-components-product-price,
html body .wc-block-cart-items__row .wc-block-components-product-price,
html body .wc-block-components-product-price.price{
  white-space:nowrap !important;
  min-width:72px;
}

/* === s22 23.10. kacheln-fix: Band+Karten+Filter-Labels === */

/* A/B) Kategorie-Band: 6 Tiles, links, enger; mobil schmale Peek-Tiles ohne Scrollbar */
html body .ss-cat-tile{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:8px !important;
  text-align:left !important;
  position:relative !important;
}
html body .ss-cat-tile__name,
html body .ss-cat-tile__count{
  position:static !important;
  display:block !important;
  float:none !important;
  width:100% !important;
  text-align:left !important;
  margin:0 !important;
  transform:none !important;
  inset:auto !important;
  background:transparent !important;
  padding:0 !important;
}
html body .ss-cat-tile__name{
  font-size:16px !important;
  font-weight:600 !important;
  color:#252525 !important;
  line-height:1.25 !important;
}
html body .ss-cat-tile__count{
  font-size:13px !important;
  color:var(--ss-muted,#6B7280) !important;
  line-height:1.3 !important;
}
html body .ss-cat-tile__img{
  position:relative !important;
  display:block !important;
  width:100% !important;
  aspect-ratio:4/3 !important;
  border-radius:16px !important;
  background-color:#EAF3EC !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center center !important;
  overflow:hidden !important;
}
/* Billigen Fade am Bildrand entfernen (Pill-Abdeckung) */
html body .ss-cat-tile__img::after{
  content:none !important;
  display:none !important;
}

/* Kategorien immer eine Zeile, Rest per horizontalem Scroll */
html body .ss-cat-band{overflow:hidden !important}
html body .ss-cat-band__track{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:20px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  -webkit-overflow-scrolling:touch !important;
  width:100% !important;
  max-width:100% !important;
  padding-bottom:10px !important;
}
html body .ss-cat-tile{
  flex:0 0 300px !important;
  max-width:300px !important;
  scroll-snap-align:start !important;
}
@media (max-width:767px){
  html body .ss-cat-band{margin:0 0 20px !important}
  html body .ss-cat-band__track{
    gap:12px !important;
    padding-bottom:2px !important;
    scrollbar-width:none !important;
    -ms-overflow-style:none !important;
  }
  html body .ss-cat-band__track::-webkit-scrollbar{
    display:none !important;
    width:0 !important;
    height:0 !important;
    background:transparent !important;
  }
  html body .ss-cat-tile{
    flex:0 0 46vw !important;
    max-width:170px !important;
    scroll-snap-align:start !important;
    gap:8px !important;
  }
  html body .ss-cat-tile__img{
    background-position:center center !important;
    background-size:cover !important;
  }
  html body .ss-cat-tile__name{font-size:15px !important}
}

/* C) Produktkarten: links, Spalte, Padding, kein Leerraum durch hide-button */
html body ul.products li.product,
html body ul.products li.product.align-center,
html body ul.products li.product.isotope-item{
  text-align:left !important;
  display:flex !important;
  flex-direction:column !important;
  float:none !important;
  overflow:hidden !important;
  border-radius:16px !important;
}
html body ul.products li.product .mfn-li-product-row-image,
html body ul.products li.product .desc,
html body ul.products li.product .mfn-li-product-row-button{
  width:100% !important;
  max-width:100% !important;
  float:none !important;
  clear:both !important;
  box-sizing:border-box !important;
}
html body ul.products li.product .mfn-li-product-row-image{
  display:block !important;
}
html body ul.products li.product .desc{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  gap:8px !important;
  padding:16px 20px 20px !important;
  text-align:left !important;
}
html body ul.products li.product .mfn-li-product-row-button.hide-button,
html body ul.products li.product .mfn-li-product-row-button.hide-button *{
  display:none !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
}
html body ul.products li.product h4.mfn-woo-product-title,
html body ul.products li.product h4,
html body ul.products li.product .mfn-woo-product-title,
html body ul.products li.product .woocommerce-loop-product__title,
html body ul.products li.product h4 a,
html body ul.products li.product .mfn-woo-product-title a{
  font-size:18px !important;
  font-weight:600 !important;
  line-height:1.3 !important;
  margin:0 !important;
  text-align:left !important;
  color:#252525 !important;
}
html body .ss-card-chips{
  justify-content:flex-start !important;
  margin:0 !important;
}
html body .ss-card-footer{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  margin-top:auto !important;
  padding-top:16px !important;
  border-top:1px solid #E2E7E3 !important;
  width:100% !important;
  box-sizing:border-box !important;
}
html body ul.products li.product .ss-card-footer .price,
html body ul.products li.product .price{
  text-align:left !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--ss-green,#027B35) !important;
  font-size:22px !important;
  font-weight:700 !important;
}
/* doppelter Preis außerhalb Footer vermeiden */
html body ul.products li.product .desc > .price:not(.ss-card-footer .price){
  /* wenn JS Footer baut, bleibt nur Footer-Preis; Fallback: ok */
}
html body ul.products li.product .image_frame img,
html body ul.products li.product:hover .image_frame img,
html body ul.products li.product:hover img{
  transform:none !important;
}

/* E) Desktop: Sidebar/Filter klar rechts, oben bündig mit den Produktkacheln */
@media (min-width:768px){
  html body.woocommerce .sidebar,
  html body.woocommerce-page .sidebar,
  html body.archive.woocommerce aside.sidebar,
  html body.post-type-archive-product .mcb-sidebar{
    float:right !important;
    clear:none !important;
  }
  html body.post-type-archive-product .mcb-sidebar .inner-wrapper-sticky > .widget:first-child,
  html body.woocommerce-shop .mcb-sidebar .inner-wrapper-sticky > .widget:first-child,
  html body.tax-product_cat .mcb-sidebar .inner-wrapper-sticky > .widget:first-child{
    margin-top:0 !important;
  }
  html body ul.products .widget,
  html body ul.products .wc-block-product-filters,
  html body ul.products .wp-block-woocommerce-product-filters{
    display:none !important;
  }
}

/* === s22b offer-arrows + badge/pin reinforce === */
/* Footer-Badges: kein zweiter Pill-Chrome (reinforce) */
html body #Footer .product-badges img,
html body #Footer img[src*="Swift_Stop_"]{
  background:transparent !important; padding:0 !important; border-radius:0 !important;
}
/* Map-Pins rund, kein eckiger Grün-BG (reinforce) */
html body .leaflet-marker-icon{
  background:transparent !important; border-radius:50% !important; overflow:hidden !important;
}
html body .leaflet-marker-icon img{ border-radius:50% !important; }
html body .marker-cluster, html body .marker-cluster div{
  border-radius:50% !important; background-color:var(--ss-green,#027B35) !important; color:#fff !important;
}

/* Offer-/Pricing-Slider: Weiter-Buttons sichtbar, nicht abgeschnitten */
html body .column_offer,
html body .column_offer .mcb-column-inner,
html body .offer,
html body .offer_thumb,
html body .offer_li,
html body .offer .image_wrapper{
  overflow:visible !important;
}
html body .offer .image_wrapper .image_frame,
html body .offer_li .image_frame{
  overflow:hidden !important; /* Bild selbst darf clippen */
  border-radius:16px;
}
/* Betheme vertikal: Pagination + Pfeile unter/neben dem Tile, klar lesbar */
html body .offer .slider_pagination,
html body .column_offer .slider_pagination,
html body .offers_group .slider_pagination{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  margin:12px 0 0 !important;
  padding:0 !important;
  width:auto !important;
  left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;
  color:#252525 !important;
  background:transparent !important;
  z-index:5 !important;
}
/* Betheme setzt .current/.count auf weiß (für dunkle Bilder). Unter dem Slider ist der Grund weiß, deshalb waren nur der Strich sichtbar. */
html body .offer .slider_pagination .current,
html body .offer .slider_pagination .count,
html body .column_offer .slider_pagination .current,
html body .column_offer .slider_pagination .count,
html body .offers_group .slider_pagination .current,
html body .offers_group .slider_pagination .count{
  color:#252525 !important;
  background:transparent !important;
  font-size:14px !important;
  line-height:1.4 !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  opacity:1 !important;
  visibility:visible !important;
}
html body .offer .slider_pagination a,
html body .offer .slider_pagination .button,
html body .column_offer .slider_pagination a,
html body .offer a.button.slider_prev,
html body .offer a.button.slider_next,
html body .offer .slider_prev,
html body .offer .slider_next,
html body .offer .slider_nav a,
html body .column_offer .button.button_js,
html body .offer_li + .button,
html body .offer .button.button_size_1{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  min-height:40px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50% !important;
  border:1px solid #E2E7E3 !important;
  background:#FFFFFF !important;
  color:#027B35 !important;
  box-shadow:0 2px 8px rgba(0,0,0,.08) !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
  left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;
  transform:none !important;
  z-index:6 !important;
}
html body .offer .slider_prev:hover,
html body .offer .slider_next:hover,
html body .offer .slider_pagination a:hover{
  background:#027B35 !important; color:#fff !important; border-color:#027B35 !important;
}
html body .offer .slider_prev i,
html body .offer .slider_next i,
html body .offer .slider_pagination i,
html body .column_offer .slider_pagination i{
  color:inherit !important;
  font-size:16px !important;
  line-height:1 !important;
  opacity:1 !important;
}
/* Dunkle eckige Carets am Tile-Rand: in runde Buttons verwandeln falls absolute */
html body .column_offer .offer > a.button,
html body .offer > .button,
html body .offer .image_wrapper > a.button{
  position:absolute !important;
  left:auto !important;
  right:12px !important;
  width:40px !important; height:40px !important;
  border-radius:50% !important;
  background:#FFFFFF !important;
  border:1px solid #E2E7E3 !important;
  color:#027B35 !important;
  box-shadow:0 2px 8px rgba(0,0,0,.1) !important;
  z-index:7 !important;
  display:inline-flex !important;
  align-items:center; justify-content:center;
}

/* Offer slick arrows: dunkle Quadrate → runde, sichtbare Buttons */
html body .column_offer .slider_prev.slick-arrow,
html body .column_offer .slider_next.slick-arrow,
html body .offer .slider_prev.slick-arrow,
html body .offer .slider_next.slick-arrow,
html body a.slider_prev.slick-arrow,
html body a.slider_next.slick-arrow{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  margin:8px 0 !important;
  padding:0 !important;
  border-radius:50% !important;
  border:1px solid #E2E7E3 !important;
  background:#FFFFFF !important;
  background-color:#FFFFFF !important;
  background-image:none !important;
  color:#027B35 !important;
  box-shadow:0 2px 10px rgba(0,0,0,.10) !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
  left:auto !important; right:auto !important;
  top:auto !important; bottom:auto !important;
  transform:none !important;
  z-index:8 !important;
  float:none !important;
}
html body .column_offer .slider_prev.slick-arrow:hover,
html body .column_offer .slider_next.slick-arrow:hover,
html body a.slider_prev.slick-arrow:hover,
html body a.slider_next.slick-arrow:hover{
  background:#027B35 !important;
  border-color:#027B35 !important;
  color:#FFFFFF !important;
}
html body .column_offer .slider_prev.slick-arrow i,
html body .column_offer .slider_next.slick-arrow i,
html body a.slider_prev.slick-arrow i,
html body a.slider_next.slick-arrow i,
html body .column_offer .slider_prev.slick-arrow .button_icon,
html body .column_offer .slider_next.slick-arrow .button_icon{
  color:inherit !important;
  opacity:1 !important;
  font-size:16px !important;
  line-height:1 !important;
  background:transparent !important;
}
html body .column_offer .slider_prev.slick-arrow i::before,
html body .column_offer .slider_next.slick-arrow i::before{
  color:inherit !important;
  opacity:1 !important;
}
/* Wrapper um Prev/Next nicht clippen */
html body .column_offer .slick-list,
html body .offer .slick-list{
  overflow:hidden; /* track ok */
}
html body .column_offer .slick-slider,
html body .offer.slick-slider,
html body .column_offer{
  overflow:visible !important;
}

/* ==========================================================================
   HOME RESTORE 23.10 (Dino): Staging-Homepage = Live-Look
   - ss-hero JS entfernt; SR7 wieder sichtbar
   - Home-Header/Hero-Overrides der QA-Runden neutralisiert
   - Shop-/Produkt-/Cart-Facelift bleibt unverändert
   ========================================================================== */

/* Header, Sticky und Slider-Revolution bleiben bei Betheme bzw. dem Slider.
   Kein position/height/display-Zwang mehr auf #Header, #Top_bar oder sr7-module. */
html body.home .ss-hero,
html body.home [data-ss-hero]{display:none !important}

/* Mobile feature-card margin leftover from section 14 */
@media (max-width:767px){
  .mcb-wrap:has(> .mcb-wrap-inner > .column_image + .column_heading) > .mcb-wrap-inner{
    margin:0;height:auto;background:transparent;border:0;box-shadow:none;padding:0;border-radius:0;
  }
}

/* Offer overflow/arrow polish nur noch soft — kein Card-Chrome erzwingen */
html body .column_offer .offer,
html body .column_offer{overflow:visible}

/* Marker, Hero-Balken, Zähler und Bilder: nur noch das, was im BeBuilder bzw. Slider steht. Kein display/top/color-Zwang. */

/* Kategorien: die 70px-Trenner aus dem Builder zusammenziehen, Bild bleibt neben dem Text. Inhalt bleibt BeBuilder. */
html body.ss-page-kategorien #Content .column_divider hr.no_line{
  margin: 8px auto 8px auto !important;
}
html body.ss-page-kategorien #Content .mcb-section.the_content.no_content{display:none}
html body.ss-page-kategorien #Content{padding-top:0 !important}
html body.ss-page-kategorien #Content .mcb-section:first-child{
  padding-top:180px !important;
  padding-bottom:36px !important;
}
html body.ss-page-kontakt #Content .mcb-section:first-child,
html body.ss-page-news #Content .mcb-section:first-child{
  padding-top:180px !important;
  padding-bottom:48px !important;
}
html body.ss-page-news #Content .mcb-section:first-child :is(h1,.title){
  margin-top:0 !important;
}
html body.woocommerce-page #Subheader{
  padding-top:180px !important;
  padding-bottom:28px !important;
  height:auto !important;
  min-height:0 !important;
}
html body.woocommerce-page #Subheader .title{
  margin:0 !important;
}
/* Shop: Titel ist float:left und 100% breit, das Kategorie-Band daneben wird auf Breite 0 gequetscht und lässt nur Luft. Band unter die Überschrift. */
html body.post-type-archive-product #Subheader .title,
html body.woocommerce-shop #Subheader .title,
html body.tax-product_cat #Subheader .title{
  float:none !important;
  width:100% !important;
  display:block !important;
}
html body.post-type-archive-product #Subheader .ss-cat-band,
html body.woocommerce-shop #Subheader .ss-cat-band,
html body.tax-product_cat #Subheader .ss-cat-band{
  clear:both !important;
  float:none !important;
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:16px 0 4px !important;
  overflow:hidden !important;
}
html body .ss-shop-intro{display:none !important}
html body.ss-page-kategorien #Content .mcb-section:first-child :is(h1,h2,.title){
  margin-top:0 !important;
  margin-bottom:12px !important;
}
html body.ss-page-kategorien #Content .mcb-section:not([style*="027B35"]):not(.the_content){
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}
html body.ss-page-kategorien #Content .mcb-section:not([style*="027B35"]) .section_wrapper{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 28px 36px;
  box-sizing: border-box;
  background: #FFFFFF;
  border: 1px solid #E2E7E3;
  border-radius: 20px;
  padding: 32px 36px;
}
html body.ss-page-kategorien #Content .section_wrapper > .ss-buchungsinfos{
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
  margin: 4px 0 0 !important;
  padding-top: 8px;
  border-top: 1px solid #E2E7E3;
}
html body.ss-page-kategorien .ss-buchungsinfos .mcb-column-inner,
html body.ss-page-kategorien .ss-buchungsinfos .column_attr,
html body.ss-page-kategorien .ss-buchungsinfos ul,
html body.ss-page-kategorien .ss-buchungsinfos li{
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box;
}
html body.ss-page-kategorien #Content .mcb-section:not([style*="027B35"]) .section_wrapper > .wrap{
  float: none !important;
  width: calc(50% - 18px) !important;
  margin: 0 !important;
}
html body.ss-page-kategorien #Content .mcb-section:not([style*="027B35"]) .section_wrapper > .wrap:has(.column_image){
  position: static;
}
html body.ss-page-kategorien #Content .column_image .image_frame,
html body.ss-page-kategorien #Content .column_image img{
  border-radius: 16px;
}
@media (max-width: 767px){
  html body.ss-page-kategorien #Content .mcb-section:not([style*="027B35"]) .section_wrapper{
    flex-direction: column;
    gap: 20px;
    padding: 20px 16px;
  }
  html body.ss-page-kategorien #Content .mcb-section:not([style*="027B35"]) .section_wrapper > .wrap{
    width: 100% !important;
  }
  html body.ss-page-kategorien #Content .mcb-section:not([style*="027B35"]) .section_wrapper > .wrap:has(.column_image){
    position: static;
    order: -1;
  }
}

/* Über uns: Hero dichter, Foto ohne Überlapp-Loch, Gästestimmen in einer Zeile */
html body.ss-page-about #Content .mcb-section:first-child{
  padding-top:180px !important;
  padding-bottom:8px !important;
}
html body.ss-page-about #Content .mcb-section:first-child :is(h1,.title){
  margin:0 !important;
}
/* Mobil sitzt die Kopfleiste im Fluss. Die 180px waren für den überlagernden Desktop-Header und lassen auf dem Handy ein Loch. */
@media (max-width: 767px){
  html body.woocommerce-page #Subheader,
  html body.ss-page-kategorien #Content .mcb-section:first-child,
  html body.ss-page-kontakt #Content .mcb-section:first-child,
  html body.ss-page-news #Content .mcb-section:first-child,
  html body.ss-page-about #Content .mcb-section:first-child{
    padding-top:28px !important;
  }
}
/* Kategorien grünes Intro: Satz kleiner, „Unsere Produkte“ ausgeblendet. */
html body.ss-page-kategorien #Content .mcb-section[style*="027B35"] .column_attr.align_center > h1{
  display:none !important;
}
html body.ss-page-kategorien #Content .mcb-section[style*="027B35"] .column_attr.align_center > p{
  font-size:36px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  margin:0 !important;
}
@media (max-width: 767px){
  html body.ss-page-kategorien #Content .mcb-section[style*="027B35"] .column_attr.align_center > p{
    font-size:26px !important;
    line-height:1.3 !important;
  }
}
html body.ss-page-about #Content .mcb-section:nth-child(3){
  padding-top:40px !important;
  padding-bottom:48px !important;
}
html body.ss-page-about #Content .mcb-section:nth-child(2){
  display:none !important;
}
html body.ss-page-about #Content .mcb-section:nth-child(4) .section_wrapper{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  row-gap:8px;
}
html body.ss-page-about #Content .mcb-section:nth-child(4) .section_wrapper > .wrap{
  float:none !important;
}
html body.ss-page-about #Content .mcb-section:nth-child(4) .column_divider{
  height:20px !important;
  min-height:0 !important;
}
html body.ss-page-about #Content .column_blog_news .image_frame,
html body.ss-page-about #Content .posts_group .image_frame,
html body.ss-page-about #Content .post-item .image_wrapper{
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:16px;
}
html body.ss-page-about #Content .column_blog_news img,
html body.ss-page-about #Content .posts_group img,
html body.ss-page-about #Content .post-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  aspect-ratio:4/3;
}
html body.ss-page-about #Content .mcb-section.the_content.no_content{display:none}

/* BeTheme Hover-Box „Swiftstop buchen“: gleiche Ecken wie die anderen Buttons */
html body .hover_color,
html body .hover_color .hover_color_bg,
html body .hover_color a{
  border-radius:8px;
}
html body .hover_color{
  overflow:hidden;
}

/* Kennzeichen bleibt Pflicht. Angaben und Buchen-Zeile sind eine Fläche,
   der Button bleibt Markengrün (die Sperre läuft über die Fehlermeldung, nicht über ein ausgewaschenes Grün). */
html body.single-product .mfn-product-add-to-cart{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
}
html body.single-product .ssck-fields{
  margin:0 !important;
  border-radius:12px 12px 0 0;
  border-bottom:0;
  box-shadow:none;
}
html body.single-product form.cart{
  margin:0 !important;
  padding:16px 24px 20px !important;
  background:#FFFFFF;
  border:1px solid #E2E7E3;
  border-top:0;
  border-radius:0 0 12px 12px;
  box-sizing:border-box;
}
html body.single-product form.cart .single_add_to_cart_button.ssck-blocked,
html body.single-product form.cart .single_add_to_cart_button.disabled,
html body.single-product form.cart .single_add_to_cart_button:disabled,
html body.single-product form.cart .single_add_to_cart_button[disabled]{
  opacity:1 !important;
  filter:none !important;
  background-color:#027B35 !important;
  border-color:#027B35 !important;
  color:#FFFFFF !important;
  cursor:pointer !important;
}
html body.single-product .wcpay-express-checkout-wrapper{
  margin-top:12px;
}

/* Footer: Text links, Navigation rechts */
html body #Footer{
  background:#F4F6F5;
  color:#252525;
  box-shadow:none;
  border-top:1px solid #E2E7E3;
}
html body #Footer .widgets_wrapper{
  padding:56px 0 40px;
}
html body #Footer .widgets_wrapper > .container{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:18px;
}
html body #Footer .widgets_wrapper .column{
  float:none !important;
  width:100% !important;
  margin:0 !important;
}
html body #Footer .widget{margin:0}
html body #Footer #block-4{display:none}
html body #Footer .product-badges{
  display:flex !important;
  flex-wrap:wrap;
  gap:8px !important;
  margin:0 0 4px !important;
}
html body #Footer .description{
  max-width:54ch;
  margin:16px 0 0;
  color:#5C6560;
  line-height:1.6;
  font-size:15px;
}
html body #Footer .widget_nav_menu h4{display:none}
html body #Footer .widget_nav_menu ul.menu{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 22px;
  margin:0;
  padding:0;
  list-style:none;
  background:transparent;
}
html body #Footer .widget_nav_menu ul.menu li{
  margin:0;
  padding:0;
  border:0;
  background:transparent;
}
html body #Footer .widget_nav_menu ul.menu li a{
  color:#252525;
  font-weight:600;
  text-decoration:none;
}
html body #Footer .widget_nav_menu ul.menu li a:hover{color:#027B35}
html body #Footer .widget_search,
html body #Footer .wp-block-search{
  display:none !important;
}
html body #Footer .wp-block-search__inside-wrapper{
  display:flex;
  border:1px solid #E2E7E3;
  border-radius:8px;
  overflow:hidden;
  background:#FFFFFF;
}
html body #Footer .wp-block-search__input{
  flex:1;
  border:0;
  min-height:44px;
  padding:0 14px;
  background:transparent;
}
html body #Footer .wp-block-search__button{
  background:#027B35;
  color:#FFFFFF;
  border:0;
  border-radius:0;
  padding:0 16px;
  font-weight:700;
}
html body #Footer .footer_copy{
  background:#FFFFFF;
  border-top:1px solid #E2E7E3;
}
html body #Footer .footer_copy .copyright,
html body #Footer .footer_copy .copyright a{
  color:#6B726E;
  font-size:14px;
}
@media (max-width:767px){
  html body #Footer .widgets_wrapper{padding:36px 0 24px}
  html body #Footer .widgets_wrapper > .container{
    grid-template-columns:1fr;
    gap:28px;
  }
  html body #Footer .widgets_wrapper .column.one-third{
    justify-self:start;
    text-align:left;
  }
  html body #Footer .widget_nav_menu ul.menu{
    align-items:flex-start;
    gap:12px;
  }
}

