:root {
	--wd-text-font: "Rubik", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: rgb(51,51,51);
	--wd-text-font-size: 14px;
	--wd-title-font: "Oswald", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 600;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Oswald", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 500;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Oswald", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 600;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Oswald", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 700;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: #fff000;
	--wd-alternative-color: rgb(102,102,102);
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(35,250,95);
	--btn-accented-bgcolor-hover: rgb(41,255,101);
	--btn-accented-color: rgb(51,51,51);
	--btn-accented-color-hover: rgb(51,51,51);
	--wd-form-brd-width: 1px;
	--notices-success-bg: rgb(76,175,80);
	--notices-success-color: #fff;
	--notices-warning-bg: rgb(255,102,0);
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
	--wd-sticky-btn-height: 95px;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: url(https://www.affenhand.de/wp-content/uploads/2021/08/promo-popup.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: #ffffff;
	background-image: none;
}
html .product-image-summary-wrap .product_title, html .wd-single-title .product_title {
	font-weight: 600;
}
:is(.page, .search-no-results, .error404) :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.woodmart-archive-shop:not(.single-product) :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.single-product :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.woodmart-archive-blog :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.single-post :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.woodmart-archive-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
.single-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(245,245,245);
	background-image: none;
}
body, [class*=color-scheme-light], [class*=color-scheme-dark], .wd-search-form[class*="wd-header-search-form"] form.searchform, .wd-el-search .searchform {
	--wd-form-color: rgb(51,51,51);
	--wd-form-placeholder-color: 333333;
	--wd-form-brd-color: rgb(0,0,0);
	--wd-form-brd-color-focus: rgb(0,0,0);
	--wd-form-bg: rgb(255,255,255);
}
.wd .product-label.onsale {
	background-color: #fff000;
	color: rgb(51,51,51);
}
.wd .product-label.new {
	background-color: rgb(76,175,80);
	color: rgb(255,255,255);
}
.wd .product-label.featured {
	background-color: rgb(255,0,51);
	color: rgb(255,255,255);
}
.wd .product-label.out-of-stock {
	background-color: rgb(73,73,73);
	color: rgb(245,245,245);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
.woocommerce-product-gallery {
	--wd-gallery-gap: 10px;
}

@media (max-width: 1024px) {
	:root {
		--wd-sticky-btn-height: 95px;
	}

}

@media (max-width: 768.98px) {
	:root {
		--wd-sticky-btn-height: 42px;
	}

}
:root{
--wd-container-w: 1222px;
--wd-form-brd-radius: 30px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-default-brd-radius: 35px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 35px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 0px;
}

@media (min-width: 1222px) {
section.elementor-section.wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}



/* ==========================================================================
   Abschnitte:
   1. Global Variables
   2. Sekundäres Menü & Navigation
   3. Diverse Footer & Allgemeine Elemente
   4. Mega Menu
   4.1 Mega Menu Marken
   5. Kategorie Übersicht & Filter
   6. Produktseite, Galerie & Details
   7. Switches, Varianten & Weitere Produktdetails
   8. Notify Me & Kontaktformular
   9. Dynamische Rabatte & Tabellen
   10. WooCommerce Bestell-/Thankyou-Seiten
   11. Marke / Brand-Seiten
   12. Blog, Content & Links
   13. Checkout
   14. Warenkorb
   15. Mein Konto
   16. Shop, Produktübersichten & Labels
   17. Header, Sticky-Menü & mobile Produktansicht
   18. Reviews, Produktdetails & Newsletter
   19. Blog-Beitrag, Suche & Produkt-Carousel
   20. Cookie-Banner
   21. Pagination & mobiles Menü
   ========================================================================== */

/* ==========================================================================
   1. Global Variables
   ========================================================================== */
:root {
  --neon-dunkelgelb: #ffcb00;
  --neon-gelb: #fff000;
  --neon-dunkelgruen: #4caf50;
  --neon-gruen: #23fa5f;
  --neon-orange: #ff6600;
  --neon-rot: #ff0033;
  --hellgrau: #f5f5f5;
  --grau: #989898;
  --dunkelgrau: #333333;
  --wd-dropdown-padding: 0;
  --black: #000;
  --weiss: #fff;
}

/* ==========================================================================
   2. Sekundäres Menü & Navigation
   ========================================================================== */
/* Sekundedäres Menü Beliebtes */
.wd-nav-img {
  margin-right: 4px !important;
  width: 20px !important;
}

/* Overlay Button in den Warenkorb */
.wd-sticky-btn {
  box-shadow: none;
  border-top: 1px solid var(--black);
}

/* Pagination */
nav[class*=-pagination] li .current{
	color: var(--black);
}

/* ==========================================================================
   3. Diverse Footer & Allgemeine Elemente
   ========================================================================== */
/* Keine Produkte gefunden */
.no-products-footer {
  margin-bottom: 20px;
}

/* Footer Trusted Shop */
.trusted-footer-5-jahre img {
  max-width: 200px;
  height: auto;
}

/* Footer Copyright */
.za-footer img {
  max-width: 500px;
}

/* Footer-Link „Vertrag widerrufen“ hervorheben */
footer .menu a[href$="/widerrufen/"] {
  font-weight: 700;
}

footer a[href*="widerruf"]:hover {
  color: var(--dunkelgrau) !important;
}

/* ==========================================================================
   4. Mega Menu
   ========================================================================== */
/* Design Aside */
.wd-dropdown-menu.wd-design-aside .wd-dropdown {
  overflow-y: hidden !important;
  border: 1px solid var(--dunkelgrau);
  border-left: none;
  left: 269px;
}
.wd-dropdown-menu.wd-design-aside.wd-style-with-bg
  .wd-sub-menu-wrapp
  > .wd-sub-menu {
  background-color: #fff;
  box-shadow: none;
  border: 1px solid var(--dunkelgrau);
}
.wd-dropdown-menu.wd-design-aside.wd-style-with-bg
  .wd-sub-menu-wrapp
  > .wd-sub-menu {
  background-color: var(--hellgrau) !important;
}
.wd-dropdown-menu.wd-design-aside.wd-style-with-bg
  .wd-sub-menu-wrapp
  > .wd-sub-menu
  > li
  > a {
  color: var(--dunkelgrau) !important;
  border-bottom: 1px solid var(--dunkelgrau);
  background-color: var(--hellgrau);
  font-family: var(--wd-title-font);
  text-transform: uppercase;
  font-size: 13px;
}
.wd-dropdown-menu.wd-design-aside.wd-style-with-bg
  .wd-sub-menu-wrapp
  > .wd-sub-menu
  > li:last-child
  > a {
  border-bottom: none;
}
.wd-dropdown-menu.wd-design-aside.wd-style-with-bg
  .wd-sub-menu-wrapp
  > .wd-sub-menu
  > li
  > a
  .wd-nav-img {
  filter: grayscale(100%) brightness(50%);
}
.wd-sub-menu li > a:hover {
  color: var(--black);
  text-decoration: underline;
}

/* Design Default */
.wd-dropdown-menu.wd-design-default {
  border: 1px solid var(--dunkelgrau);
  background-color: var(--hellgrau);
  padding: 0;
}
.wd-dropdown-menu.wd-design-default .woodmart-nav-link {
  font-family: var(--wd-title-font);
  text-transform: uppercase;
  font-weight: 600;
  font-size: 12px;
  line-height: 24px;
  color: var(--dunkelgrau);
  padding-left: 16px;
  padding-top: 10px;
  padding-bottom: 12px;
}
.wd-dropdown-menu.wd-design-default .wd-sub-menu li {
  border-bottom: 1px solid var(--dunkelgrau);
}
.wd-dropdown-menu.wd-design-default .wd-sub-menu li:last-child {
  border-bottom: none;
}
.wd-dropdown-menu.wd-design-default .wd-sub-menu li a:hover {
  background-color: #fff;
}

/* Account Dropdown */
.wd-dropdown-menu.wd-dropdown-my-account .wd-sub-menu li > a {
  font-family: var(--wd-title-font);
  text-transform: uppercase;
  font-weight: 600;
  font-size: 12px;
  line-height: 24px;
  color: var(--dunkelgrau);
  padding-left: 16px;
  padding-top: 10px;
  padding-bottom: 12px;
}

/* Hauptmenü */
.wd-nav .nav-kategorie-burger > a:before {
  margin-right: 6px;
  font-size: 12px;
  font-weight: 100;
  content: "\f15a";
  font-family: "woodmart-font";
}
.wd-nav .nav-kategorie-burger > a:after {
  display: none;
}
.wd-nav[class*="wd-style-"]
  > li:is(.wd-has-children, .menu-item-has-children)
  > a:after {
  color: var(--nav-color);
  font-weight: 600;
}
.menu-label-red {
  --wd-label-color: var(--neon-rot);
}
.menu-label-red,
.menu-label-green {
  border-radius: 25px;
  padding: 3px 6px;
  left: calc(100% - 20px) !important;
}

/* ==========================================================================
   4.1 Mega Menu Marken
   ========================================================================== */

.mega-menu-brands .wd-grid-g {
  /* Grid: 4 Spalten */
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(12, auto);
  grid-auto-columns: 25%;
  margin: 0;
  padding: 0;
  /* Oben/unten mehr Platz schaffen */
  padding-top: 10px;
  padding-bottom: 10px;
  gap: 0;
  position: relative;
  box-sizing: border-box;
  border: none;

  /* 1) Drei Vertikal-Linien (1px breit) */
  /* 2) Dahinter der weiß-graue Spaltenverlauf */
  background:
    /* Linie bei 25% */
    linear-gradient(to bottom, #000 0%, #000 100%) left 25% top/1px 100%
      no-repeat,
    /* Linie bei 50% */ linear-gradient(to bottom, #000 0%, #000 100%) left 50%
      top/1px 100% no-repeat,
    /* Linie bei 75% */ linear-gradient(to bottom, #000 0%, #000 100%) left 75%
      top/1px 100% no-repeat,
    /* Weiß/Grau-Verlauf für Spalten */
    linear-gradient(
        to right,
        #fff 0%,
        #fff 25%,
        #f2f2f2 25%,
        #f2f2f2 50%,
        #fff 50%,
        #fff 75%,
        #f2f2f2 75%,
        #f2f2f2 100%
      );

  /* Wir wollen die Linien & Farbverläufe beide voll ausfüllen */
  background-size:
    /* Für die 3 Linien: je 1px in der Breite, 100% in der Höhe */
    1px 100%,
    1px 100%,
    1px 100%,
    /* Und dann das eigentliche Spalten-Gradient über gesamte Box */ 100% 100%;

  /* Alle Hintergründe einzeln NICHT wiederholen, außer wir wollen weitere Spalten/Linien */
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
}

/* Etwas Innenabstand bei den einzelnen Items */
.mega-menu-brands .wd-col,
.mega-menu-brands .wd-brand-item {
  padding-bottom: 8px;
  padding-top: 8px;
  padding-left: 20px;
  background: transparent !important;
  border: none !important;
  margin: 0;
  box-sizing: border-box;
}

.mega-menu-brands a:hover {
  color: var(--black);
  text-decoration: underline;
}

/* ==========================================================================
   4.2 Mobiles Menu
   ========================================================================== */


.mobile-nav .wd-nav-opener.wd-active {
	color: #000;
}

.item-level-1 .woodmart-nav-link{
	padding-left: 40px;
	background: var(--hellgrau)
}

.item-level-2 .woodmart-nav-link{
	padding-left: 60px;
}

/* ==========================================================================
   5. Kategorie Übersicht & Filter
   ========================================================================== */
/* Listenansicht */
.wd-product.product-list-item .product-list-content .payment {
  display: none;
}

/* Filter, Swatches & Brands */
.wd-swatches-filter.wd-swatches-brands {
  --wd-swatch-w: 90px;
  --wd-swatch-h: 45px;
}
[class*="wd-swatches"].wd-shape-round .wd-swatch {
  border-radius: 2em;
}
.layered-nav-link .wd-swatch.wd-bg {
  width: 45px;
  height: 45px;
}
[class*="wd-swatches"].wd-bg-style-2 .wd-swatch.wd-bg {
  padding: 3px;
}
.wd-swatches-filter.wd-checkboxes-on li > a:before,
.wd-widget-stock-status a:before {
  border: 1px solid var(--black);
}
.wd-swatches-filter.wd-checkboxes-on li > a:hover:before,
.wd-widget-stock-status a:hover:before {
  background: #fff;
  border: 1px solid var(--black);
  color: black;
}
.wd-swatches-filter.wd-checkboxes-on li.wd-active > a::before,
.wd-widget-stock-status a.wd-active:before {
  background-color: var(--dunkelgrau);
  border: 1px solid var(--black);
}
.wd-swatches-brands
  :is(.wd-swatch-wrap a:hover, .wd-swatch-wrap.wd-active)
  .wd-swatch.wd-bg {
  opacity: 1;
  border: 2px solid var(--black);
}
.filters-area {
  border-top: 1px solid var(--black);
  border-bottom: 1px solid var(--black);
  padding-bottom: 0;
}
.wd-filter-list .count {
  color: var(--black);
  border: 1px solid var(--black);
}
.wd-filter-list .wc-layered-nav-term a:hover + .count,
.wd-filter-list .wc-layered-nav-term.wd-active .count {
  color: var(--black);
  background-color: #fff;
  border: 1px solid var(--black);
}
.woodmart-woocommerce-layered-nav
  .wd-scroll-content[class*="wd-swatches"].wd-text-style-1
  .wd-swatch.wd-text {
  max-height: 30px;
}

/* Gallery Bilder Elementor: "Basisgallery"*/
#gallery-1 .gallery-item{
	width: 100%!important;
	padding: 10px;
	margin-top: 0px!important;
}

#gallery-1 img{
	border: 1px solid #000!important;
	padding: 10px;
}

/* ==========================================================================
   6. Produktseite, Galerie & Details
   ========================================================================== */
/* Produktseite Tab */
.wd_custom_tab_tab .nav-link-text.wd-tabs-title {
  background-color: var(--neon-gruen);
  margin-top: -17px;
  padding: 10px;
  color: var(--dunkelgrau);
  border-radius: 50px;
}
/* Tablet-Accordion */
.wd-accordion.wd-style-default > .wd-nav-wrapper + .wd-accordion-item {
  border-top: none;
}

.wd-accordion.wd-style-default > .wd-accordion-item {
  border-bottom: 1px solid var(--black);
}

.wd-accordion-title-text {
  font-size: 18px;
}
/* Rahmen in Produktübersichten */
.products-bordered-grid.elements-grid > .wd-col,
.products-bordered-grid.elements-grid {
  border-color: var(--black) !important;
	
}
.wd-nav-vertical.wd-design-default > li:not(:last-child),
.wd-nav-vertical.wd-design-default {
  border-color: var(--black);
}
/* Marken Einblendung */
.product-design-default .entry-summary:not(.col-lg-4) .wd-product-brands a,
.product-design-default
  .entry-summary:not(.col-lg-4)
  .wd-product-brands
  a:hover {
  background-color: #fff;
  box-shadow: none;
}
/* Checkout Hintergründe */
.woocommerce-checkout > .checkout-order-review {
  background-color: #fff;
}

/* Checkout Submit Button */
.wc-gzd-order-submit {
  margin-top: 32px;
}

/* Dekorationselemente ausblenden */
.woocommerce-checkout > .checkout-order-review:before,
.woocommerce-checkout > .checkout-order-review:after {
  display: none;
}
/* Hintergrund & Rahmen Zahlungsmethoden */
.checkout-order-review > .woocommerce-checkout-review-order .wd-table-wrapper {
  background-color: var(--grau-hintergrund);
  border: 1px solid var(--black);
}

/* Überschrift Zahlungsart wählen */
#order_payment_heading {
  text-align: left;
}

/* Zahlungsart auswählen DHL-Einbettung */
.dhl-preferred-service-content {
  margin-top: 1em;
  padding: 16px;
  margin-bottom: 15px;
  background-color: #fff;
}
.dhl-preferred-service-content
  .dhl-preferred-service-item
  .dhl-preferred-location-types {
  align-items: flex-start;
}

/* Zusammenfassung */
.woocommerce-gzd-checkout.woocommerce-checkout .shop_table td,
.woocommerce-gzd-checkout.woocommerce-checkout .shop_table th {
  padding-left: 20px;
  padding-right: 20px;
  background-color: #fff;
}

/* Schatten entfernen */
.payment_methods .payment_box {
  box-shadow: none;
}
/* Zusammenfassung */
.woocommerce-checkout-review-order-table tr {
  border-bottom: 1px solid var(--dunkelgrau);
  background-color: #fff;
}
.woocommerce-checkout-review-order-table thead tr {
  border-width: 1px;
}

/* Warenkorb Seite */
.cart-content-wrapper > .cart-totals-section .cart-totals-inner,
.cart-content-wrapper > .cart_totals .cart-totals-inner {
  border: 1px solid var(--black);
  background-color: #fff;
}
table td,
table :is(tbody, tfoot) th,
table th {
  border-bottom: 1px solid var(--dunkelgrau);
}
/* Gutschein Button */
.wd-coupon-form .button[name="apply_coupon"] {
  background-color: var(--grau);
}
.wd-coupon-form .button[name="apply_coupon"]:hover {
  background-color: #575757;
}
/* Swatches */
.wd-swatch,
.wd-swatch.wd-text {
  height: 70px;
  background-color: #fff;
  border: 1px solid var(--black);
  padding-left: 20px;
  padding-right: 20px;
}
.wd-load-more {
  border-radius: 20px;
  border: 1px solid var(--black);
}
.wd-swatch.wd-text {
  min-width: 2em;
}
/* Übersicht Swatches */
.product-element-bottom .wd-swatch.wd-bg {
  width: 35px;
  height: 35px;
  --wd-swatch-inn-sp: 0px !important;
  border: 1px solid var(--dunkelgrau);
}
/* Warenkorb & Checkout Animation; Produkt-Kaufbutton bleibt ruhig. */
#place_order,
.wc-proceed-to-checkout {
  animation: pulseColor 4s ease-in-out infinite;
  font-size: 22px;
}
.wd-builder-off #place_order {
  height: 60px;
}
/* Formular Gutschein im Checkout */
.website-wrapper
  :is(.woocommerce-form-coupon-toggle, .woocommerce-form-login-toggle)
  > div
  :is(.showlogin, .showcoupon) {
  color: var(--dunkelgrau) !important;
}
/* Add to Cart Button */
.single_add_to_cart_button {
  animation: none;
  filter: none;
  --btn-bgcolor: var(--neon-gruen);
  --btn-bgcolor-hover: var(--neon-gruen);
  padding: 16px 32px;
  min-height: var(--btn-height);
  font-size: 22px;
}
@keyframes pulseColor {
  0%,
  100% {
    filter: brightness(1);
  }
  50% {
    filter: brightness(1.3);
  }
}
.single_add_to_cart_button.disabled,
.single_add_to_cart_button.disabled:hover {
  background-color: var(--grau);
  color: #fff;
}

/* MwSt & Versand Infos */
.legal-price-info,
.legal-price-info a {
  font-size: 12px;
  color: var(--color-gray-500);
  font-weight: 100 !important;
}

/* Mengensteuerung: native Darstellung und gemeinsame Hover-Farbe. */
.woocommerce div.quantity :is(.minus, .plus) { appearance: none; -webkit-appearance: none; }
.woocommerce div.quantity :is(.minus, .plus):hover { background-color: #efefef; color: #333; }

/* Produktkopf: Titel, Untertitel und Rezensionen bilden eine kompakte Gruppe. */
.single-product .summary .summary-inner > :is(.product_title, .woocommerce-product-subtitle) {
  margin: 0 0 8px;
}
.single-product .summary .summary-inner > .woocommerce-product-rating {
  margin: 0;
}
.single-product .summary .summary-inner > .price {
  margin: 16px 0 0;
}
.single-product .summary .summary-inner > .legal-price-info {
  margin: 2px 0 24px;
}

/* Gemeinsamer Kaufbereich, nur im Hauptformular der Produktspalte. */
.single-product .summary form.cart { --ah-purchase-control-height: 60px; margin-bottom: 16px; }
.single-product .summary form.cart:not(.variations_form),
.single-product .summary form.cart .woocommerce-variation-add-to-cart {
  display: flex; flex-wrap: wrap; align-items: center; gap: 12px; width: 100%;
}
.single-product .summary form.cart > :is(.variations, .single_variation_wrap),
.single-product .summary form.cart :is(.wcpa_form_outer, .flex-status-and-time) { flex-basis: 100%; width: 100%; }
:is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity:not(.hidden) {
  display: inline-flex; width: 102px; max-width: 100%;
  height: var(--ah-purchase-control-height, 60px); box-sizing: border-box; border: 1px solid #000;
  border-radius: 999px; overflow: hidden; flex: 0 0 auto; margin: 0;
}
:is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity :is(.minus, .plus, .qty) {
  height: 100%; min-height: 0; box-sizing: border-box; border: 0; border-radius: 0;
  margin: 0; padding-block: 0; background: #fff; color: #333;
}
:is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity .qty { width: 50px; border-inline: 1px solid #000; }
:is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity :is(.minus, .plus) { width: 25px; min-width: 25px; padding-inline: 0; flex: 0 0 25px; }
:is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity:has(:focus-visible) { outline: 2px solid #000; outline-offset: 3px; }
.single-product .summary form.cart .single_add_to_cart_button {
  display: flex; flex: 1 1 180px; width: auto; height: var(--ah-purchase-control-height);
  min-height: var(--ah-purchase-control-height); box-sizing: border-box; border-radius: 999px;
  align-items: center; justify-content: center; margin: 0; padding: 12px 20px;
  font-family: var(--wd-text-font); font-weight: 700;
}
.single-product .summary form.cart .flex-status-and-time { margin: 4px 0 0; gap: 8px 12px; }
@media (max-width: 480px) {
  :is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity:not(.hidden) { width: 90px; }
  :is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity .qty { width: 38px; min-width: 0; }
  :is(.single-product .summary form.cart, .woocommerce-cart .woocommerce-cart-form, .woocommerce-checkout .woocommerce-checkout-review-order-table) .quantity :is(.minus, .plus) { width: 25px; min-width: 25px; }
  .single-product .summary form.cart .single_add_to_cart_button { font-size: 16px; padding-inline: 10px; }
}

/* Statische Elemente im Warenkorb */
.wd-sticky-btn-cart .delivery-time-info,
.wd-sticky-btn-cart .stock.in-stock.wd-style-default {
  display: none;
}

/* Galerie */
.wd-gallery-thumb
  :is(
    .wd-carousel-item:hover,
    .wd-thumb-active,
    .wd-carousel:not(.wd-initialized) .wd-carousel-item:first-child
  ),
.wd-gallery-thumb .wd-carousel-item {
  background-color: #fff;
  border-radius: 35px;
  overflow: hidden; /* Fotos an der vorhandenen Rundung abschneiden. */
  margin-right: 11px;
  margin-top: 10px;
}
.wd-gallery-thumb
  :is(
    .wd-carousel-item:hover,
    .wd-thumb-active,
    .wd-carousel:not(.wd-initialized) .wd-carousel-item:first-child
  ) {
  border: none;
}
.woocommerce-product-gallery {
  --wd-gallery-gap: 0px;
}
.woocommerce-product-gallery img {
  border-radius: 35px;
}
.wd-carousel-container.wd-gallery-thumb img {
  border-radius: 35px;
}

/* Galerie-Thumbnails gegen übergroße Originalbilder absichern */
.wd-gallery-thumb .wd-carousel-item {
  width: 150px !important;
  height: 150px !important;
  flex: 0 0 150px !important;
}

.wd-gallery-thumb picture,
.wd-gallery-thumb img {
  display: block;
  width: 150px !important;
  height: 150px !important;
  object-fit: cover;
}

/* Alle Galerie-Navigationspunkte vollständig anzeigen */
.woocommerce-product-gallery
  .wd-nav-pagin.wd-type-bullets-dynamic {
  width: max-content !important;
  max-width: 100%;
  overflow: visible !important;
}

.woocommerce-product-gallery
  .wd-nav-pagin.wd-type-bullets-dynamic
  .wd-nav-pagin-item {
  left: 0 !important;
}

/* Kurzbeschreibung */
.woocommerce-product-details__short-description ul li:before {
  content: "✓ ";
  color: var(--neon-dunkelgruen);
  font-weight: bolder;
  margin-right: 5px;
}
.woocommerce-product-details__short-description ul {
  list-style-type: none;
  margin: 0;
  text-indent: -17px;
}
.woocommerce-product-details__short-description {
  font-size: 16px;
  color: var(--dunkelgrau);
  margin-bottom: 24px;
  border: 1px solid var(--black);
  padding: 20px;
  padding-left: 25px;
  background-color: #fff;
}
.woocommerce-product-details__short-description li {
  margin-bottom: 2px;
}

/* Ähnliche Produkte */
.products-bordered-grid .wd-carousel-inner {
  border: 1px solid var(--black)!important;
}
.products-bordered-grid .wd-carousel-item {
  border-inline-end: 1px solid var(--black)!important;
}

/* Preisauszeichnung */
.summary-inner.set-mb-l.reset-last-child .woocommerce-Price-amount.amount {
  font-size: 50px;
  font-weight: 800;
  font-family: "Oswald", sans-serif;
  color: var(--dunkelgrau);
}

.price {
  font-family: "Oswald", sans-serif;
  color: var(--dunkelgrau);
  margin-bottom: 0;
}
.woocommerce-Price-amount.amount {
  color: var(--dunkelgrau);
  font-family: "Oswald", sans-serif;
}

/* Sale-Preise: aktueller Preis zuerst, alter Preis kleiner mit schwarzem Strich.
   Gemeinsame Gestaltung fuer Produktkopf, konkrete Varianten und Produktkarten. */
:is(.single-product .summary .summary-inner > .price,
    .single-product .summary .woocommerce-variation-price > .price,
    .wd-product .price):has(> del):has(> ins) {
  --ah-sale-price-size: 20px;
  --ah-sale-price-gap: 12px;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  column-gap: var(--ah-sale-price-gap);
  row-gap: 4px;
  max-width: 100%;
}
:is(.single-product .summary .summary-inner > .price,
    .single-product .summary .woocommerce-variation-price > .price):has(> del):has(> ins) {
  --ah-sale-price-size: 32px;
  --ah-sale-price-gap: 14px;
}
.wd-product .price:has(> del):has(> ins) {
  display: inline-flex;
  justify-content: center;
}
.wd-product.product-list-item .price:has(> del):has(> ins) {
  justify-content: flex-start;
}
:is(.single-product .summary .summary-inner > .price,
    .single-product .summary .woocommerce-variation-price > .price,
    .wd-product .price):has(> del):has(> ins) > ins {
  order: 0;
  display: inline;
  margin: 0;
  padding: 0;
  color: var(--dunkelgrau);
  font-size: var(--ah-sale-price-size);
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  text-decoration: none;
}
:is(.single-product .summary .summary-inner > .price,
    .single-product .summary .woocommerce-variation-price > .price,
    .wd-product .price):has(> del):has(> ins) > del {
  order: 1;
  display: inline;
  margin: 0;
  color: #666666;
  font-size: calc(var(--ah-sale-price-size) * 0.75);
  font-weight: 500;
  line-height: 1.2;
  opacity: 1;
  white-space: nowrap;
  text-decoration-line: line-through;
  text-decoration-color: var(--black);
  text-decoration-thickness: 2px;
  text-decoration-skip-ink: none;
}
:is(.single-product .summary .summary-inner > .price,
    .single-product .summary .woocommerce-variation-price > .price,
    .wd-product .price):has(> del):has(> ins) > :is(del, ins) .woocommerce-Price-amount {
  display: inline;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}
:is(.single-product .summary .summary-inner > .price,
    .single-product .summary .woocommerce-variation-price > .price,
    .wd-product .price):has(> del):has(> ins) > .woocommerce-price-suffix {
  order: 2;
}
@media (max-width: 767px) {
  :is(.single-product .summary .summary-inner > .price,
      .single-product .summary .woocommerce-variation-price > .price):has(> del):has(> ins) {
    --ah-sale-price-size: 28px;
    --ah-sale-price-gap: 12px;
  }
}


/* PDF-Gutschein: Einzelmotiv nicht zusätzlich im Kaufbereich anzeigen.
   Versteckte Formularwerte bleiben erhalten; echte Motivwahl bleibt sichtbar. */
.single-product .voucher-image-options:has(> .voucher-image-option:only-child):not(:has(input[type="radio"])) {
  display: none;
}

/* Add-on-Plugin: gemeinsame Gestaltung aller Produktformulare, ohne Produkt- oder Formular-IDs. */
.single-product .wcpa_wrap {
  width: 100%;
  max-width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
}
.single-product .wcpa_wrap .wcpa_row {
  border: 0;
  margin-bottom: 16px;
}
.single-product .wcpa_wrap .wcpa_field_wrap {
  min-width: 0;
  margin-bottom: 0;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_field_label {
  margin-bottom: 8px;
  font-family: var(--wd-text-font);
  font-size: var(--wd-text-font-size, 14px);
  font-weight: var(--wd-text-font-weight, 400);
  line-height: 1.4;
  text-transform: none;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_field_desc {
  margin: 0 0 12px;
  font-size: 14px;
}
.single-product .wcpa_wrap .wcpa_field_wrap :is(.wcpa_checkbox, .wcpa_radio, .wcpa_image) {
  width: 100%;
  margin: 0;
}
.single-product .wcpa_wrap .wcpa_field_wrap :is(.wcpa_checkbox, .wcpa_radio, .wcpa_image) > label {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 10px 24px;
  min-height: 60px;
  border: 1px solid #000;
  border-radius: 999px;
  background: #fff;
  color: var(--dunkelgrau);
  line-height: 1.5;
  cursor: pointer;
  box-sizing: border-box;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_image > label {
  grid-template-columns: 22px 40px minmax(0, 1fr);
}
.single-product .wcpa_wrap .wcpa_field_wrap label:has(input:checked) {
  box-shadow: inset 0 0 0 2px #000;
}

/* Gemeinsamer Auswahlzustand fuer Textvarianten, Dropdowns und Zusatzoptionen.
   Innenkontur bewahrt die Feldgroesse beim Anwaehlen. */
.single-product { --ah-selection-background: #e4f2e6; }
.single-product .summary table.variations .wd-swatch.wd-text.wd-active,
.single-product .wcpa_wrap .wcpa_field_wrap label:has(input:checked),
.single-product .summary .ah-variant-select.ah-has-value .select2-selection--single,
.single-product .select2-container .ah-variant-dropdown .select2-results__option[data-selected="true"] {
  background: var(--ah-selection-background);
}
.single-product .wcpa_wrap .wcpa_field_wrap label:has(input:focus-visible) {
  outline: 1px solid #000;
  outline-offset: 3px;
}
.single-product .wcpa_wrap .wcpa_field_wrap :is(input[type="checkbox"], input[type="radio"]) {
  position: relative;
  opacity: 1;
  visibility: visible;
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid #000;
  background: #fff;
  padding: 0;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin: 0;
  transform: none;
  clip: auto;
  clip-path: none;
  accent-color: #000;
}
.single-product .wcpa_wrap .wcpa_field_wrap :is(.wcpa_checkbox_custom, .wcpa_radio_custom, .wcpa_selected_tick) {
  display: none;
}
/* Add-on-Bildlupe: Schwarz/Weiß statt Plugin-Blau, für alle Produktformulare. */
.single-product .wcpa_wrap .wcpa_mag_icon {
  background: #000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='10' r='6' fill='none' stroke='white' stroke-width='2.5'/%3E%3Cpath d='M14.5 14.5L21 21' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E") center / 75% 75% no-repeat;
  color: #fff;
  border-radius: 50%;
}
.single-product .wcpa_wrap .wcpa_mag_icon::before,
.single-product .wcpa_wrap .wcpa_mag_icon::after { content: none; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_img_wrap {
  display: block;
  width: 40px !important;
  height: 40px !important;
  margin: 0;
  border: 0;
  box-shadow: none;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_img_wrap img {
  width: 40px;
  height: 40px;
  object-fit: contain;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_image_label {
  min-width: 0;
  margin: 0;
  text-align: left;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px 12px;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_image_label > span {
  display: block;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_option_price {
  margin: 0;
  padding: 0;
  white-space: nowrap;
  font-weight: 600;
}
.single-product .wcpa_wrap .wcpa_price_summary {
  margin-top: 24px;
  margin-bottom: 0;
  padding: 0;
}
.single-product .wcpa_wrap .wcpa_price_summary .wcpa_total {
  border-top: 0;
  margin: 0;
  padding: 0;
  font-size: 19px;
}
@media (max-width: 480px) {
  .single-product .wcpa_wrap .wcpa_field_wrap :is(.wcpa_checkbox, .wcpa_radio) > label {
    grid-template-columns: 22px minmax(0, 1fr);
  }
  .single-product .wcpa_wrap .wcpa_field_wrap :is(.wcpa_checkbox, .wcpa_radio) .wcpa_option_price {
    grid-column: 2;
  }
  .single-product .flex-status-and-time {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
}

/* Formulare füllen wie die Variantentabelle die Produktspalte. Mehrspaltige Formulare bleiben erhalten. */
.single-product .wcpa_form_outer { width: 100%; margin: 0 0 4px; }
.single-product .woocommerce-variation-add-to-cart:has(.wcpa_wrap) { width: 100%; }
.single-product .wcpa_wrap .wcpa_row > .wcpa_field_wrap:only-child { width: 100%; }
.single-product .wcpa_wrap .wcpa_field_wrap :is(label, input, select, textarea, .wcpa_image_label) {
  font-family: var(--wd-text-font);
  font-size: var(--wd-text-font-size, 14px);
  font-weight: var(--wd-text-font-weight, 400);
}
/* Varianten und Add-ons teilen Feldanordnung, Schrift und Abstände. */
.single-product .summary form.variations_form table.variations { display: block; width: 100%; margin: 0 0 16px; border: 0; }
.single-product .summary form.variations_form table.variations :is(tbody, tr) { display: block; width: 100%; border: 0; }
.single-product .summary form.variations_form table.variations tr { margin: 0 0 24px; }
.single-product .summary form.variations_form table.variations tr:last-child { margin-bottom: 0; }
.single-product .summary form.variations_form table.variations tr > :is(td, th) { display: block; width: 100%; padding: 0 !important; border: 0; }
.single-product .summary form.variations_form table.variations tr > .label { margin: 0 0 8px; text-transform: none; }
.single-product .summary form.variations_form table.variations .label label { font-family: var(--wd-text-font); font-size: 14px; font-weight: 400; text-transform: none; }
.single-product .summary form.variations_form table.variations .value > select { width: 100%; max-width: 100%; height: 48px; border: 1px solid #000; border-radius: 999px; }
.single-product .summary table.variations .wd-swatches-product { gap: 12px; margin: 0; padding: 0; }
.single-product .summary table.variations .wd-swatch.wd-text {
  --wd-swatch-h: 48px; height: 48px !important; min-height: 48px; min-width: 64px;
  padding: 0 20px; border: 1px solid #000; border-radius: 999px; font-size: 14px;
  font-family: var(--wd-text-font); line-height: 1.4;
}
.single-product .summary table.variations .wd-swatch.wd-text .wd-swatch-text { font-size: 14px; font-family: var(--wd-text-font); }
/* Leere Variantenfelder dürfen weder Zusatzabstand erzeugen noch die Preiszeile einklappen. */
.single-product .summary .voucher-fields-wrapper-variation:empty,
.single-product .summary .voucher-fields-wrapper-variation:has(.voucher-image-options > .voucher-image-option:only-child):not(:has(input:not([type="hidden"]), select, textarea)) { display: none !important; }
.single-product .summary:has(form.variations_form) .legal-price-info { min-height: 19.2px; }
.single-product .summary:has(form.variations_form) .legal-price-info > .wc-gzd-additional-info { margin: 0; }
/* Variante C: nativer Reset-Link in einer stabilen Kopfzeile der ersten Auswahl. */
.single-product .summary form.variations_form table.variations:has(.reset_variations) {
  position: relative;
  container-type: inline-size;
}
.single-product .summary form.variations_form table.variations:has(.reset_variations) :is(tbody, tr, .value) {
  position: static;
}
.single-product .summary form.variations_form table.variations:has(.reset_variations) tr:first-child > .label {
  display: flex;
  align-items: center;
  min-height: 48px;
  padding-inline-end: calc(56% + 12px) !important;
  box-sizing: border-box;
}
.single-product .summary form.variations_form table.variations .wd-reset-var {
  display: contents !important;
}
.single-product .summary form.variations_form table.variations .reset_variations {
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-end;
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: 0;
  width: max-content;
  max-width: 56%;
  min-height: 48px;
  margin: 0;
  padding: 2px 0;
  box-sizing: border-box;
  font-family: var(--wd-text-font);
  font-size: var(--wd-text-font-size, 14px);
  font-weight: 400;
  line-height: 1.3;
  text-align: end;
  white-space: normal;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.single-product .summary form.variations_form table.variations .reset_variations:focus-visible {
  outline: 1px solid #000;
  outline-offset: 2px;
}
/* Sehr schmale Produktspalten erhalten zwei feste Kopfzeilen statt Textkollisionen. */
@container (max-width: 340px) {
  .single-product .summary form.variations_form table.variations:has(.reset_variations) tr:first-child > .label {
    align-items: flex-start;
    min-height: 96px;
    padding-inline-end: 0 !important;
    padding-block-end: 48px !important;
  }
  .single-product .summary form.variations_form table.variations .reset_variations {
    inset-block-start: 48px;
    max-width: 100%;
  }
}

.single-product .wcpa_wrap :is(.wcpa_options_total, .wcpa_product_total, .wcpa_field_price) { display: none; }
/* Kompakte Radio-Auswahlbuttons; native Inputs erhalten Tastatur und Einfachauswahl. */
.single-product .wcpa_wrap .wcpa_group_field:has(> .wcpa_radio) { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; }
.single-product .wcpa_wrap .wcpa_group_field > .wcpa_radio { flex: 1 1 220px; width: auto; min-width: 0; max-width: 100%; margin: 0 !important; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_radio > label { grid-template-columns: 20px minmax(0, 1fr); gap: 2px 10px; min-height: 64px; height: 100%; padding: 10px 22px; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_radio > label > input { grid-column: 1; grid-row: 1 / span 2; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_radio > label > span { grid-column: 2; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_radio .wcpa_option_price { font-size: 13px; font-weight: 400; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_radio input:not(:checked) { opacity: 0; }


/* Zusatzoptionen als stark gerundete Auswahlfelder, ohne äußeren Abschnittskasten. */
.single-product .wcpa_wrap > .wcpa_section {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  margin-bottom: 16px;
}
.single-product .wcpa_wrap .wcpa_section_body > .wcpa_row:last-child { margin-bottom: 0; }
.single-product .wcpa_wrap .wcpa_group_field > :is(.wcpa_checkbox, .wcpa_radio, .wcpa_image) + :is(.wcpa_checkbox, .wcpa_radio, .wcpa_image) {
  border-top: 0;
  padding-top: 0;
  margin-top: 12px;
}
.single-product .wcpa_wrap input[type="radio"] { border-radius: 50%; }
.single-product .wcpa_wrap input[type="radio"]:checked {
  background: #000;
  box-shadow: none;
}
.single-product .wcpa_wrap input[type="checkbox"] { border-radius: 2px; }
.single-product .wcpa_wrap input[type="checkbox"]:checked { background: #000; }
.single-product .wcpa_wrap :is(input[type="checkbox"], input[type="radio"]):checked::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 4px;
  width: 10px;
  height: 6px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}
.single-product .wcpa_wrap :is(input, select, textarea) { border-color: #000; }

@media (max-width: 480px) {
  .single-product .wcpa_wrap .wcpa_field_wrap .wcpa_image_label { grid-template-columns: minmax(0, 1fr); }
  .single-product .wcpa_wrap .wcpa_field_wrap :is(.wcpa_checkbox, .wcpa_radio, .wcpa_image) > label { padding: 12px 20px; }
}

/* ==========================================================================
   7. Switches, Varianten & Weitere Produktdetails
   ========================================================================== */
/* Switches & Variantenauswahl */
.wd-label-top-md table.variations .cell {
  display: block;
}
.label.cell {
  text-transform: uppercase;
}
/* Warenkorb Counter im Menü */
.wd-header-cart.wd-design-5 .wd-cart-number {
  color: var(--dunkelgrau) !important;
  background-color: var(--neon-gelb);
}
/* Accordion */
.wd-accordion-title:is(.wd-active, :hover) > .wd-accordion-title-text {
  color: var(--dunkelgrau) !important;
}
.wd-accordion.wd-style-default > .wd-accordion-item:first-of-type {
  border-top: none;
}
/* Produkt Details Accordion Mobil */
.wd-accordion.wd-style-default:before {
  display: none !important;
}

.wd-accordion.wd-style-default > .wd-nav-wrapper + .wd-accordion-item {
  border-top: none !important;
}

.wd-accordion.wd-style-default .wd-accordion-item {
  border-bottom: 1px solid var(--black);
}
.wd-accordion-opener {
  color: var(--dunkelgrau);
}
.wd-accordion-title {
  padding-top: 5px;
}
/* Hover Button in Produktübersichten */
.wd-buttons {
  box-shadow: none;
  border: 1px solid var(--black);
  border-radius: 50px;
}
/* Hot/New Label */
.product-labels.labels-rounded .product-label {
  min-height: 40px !important;
  font-size: 10px !important;
}
.product-label {
  min-width: 40px;
}
/* Produkt Label über Bild */
.woocommerce-product-gallery .product-labels.labels-rounded .product-label {
  min-width: 40px;
  min-height: 40px;
}
/* Lieferzeit auf Produktseite */
.stock.in-stock.wd-style-default {
  font-weight: bolder;
  color: var(--btn-accented-bgcolor);
}
/* Unter Button ausblenden */
.wc-gzd-additional-info.delivery-time-info {
  display: none !important;
}
/* Vorratsstatus */
.wd-price-outside .woocommerce-variation .woocommerce-variation-availability,
.delivery-time-info-mn {
  font-size: 16px;
  font-weight: bold;
  margin-right: 5px;
}
.delivery-time-info-mn {
  line-height: 1.2;
}
p.stock.wd-style-default:is(.available-on-backorder) {
  color: var(--neon-orange);
}
p.stock.wd-style-default:is(.in-stock) {
  color: var(--neon-dunkelgruen);
}
p.stock.wd-style-default:is(.out-of-stock) {
  color: var(--neon-rot);
}
.out-of-stock-second-text {
  color: #777;
}
p.stock.wd-style-default.in-stock:before {
  display: none;
}

/* Compare & Share */
.wd-action-btn > a,
.icons-design-default .wd-social-icon,
.wd-social-icons .wd-label,
.icons-design-default .wd-social-icon {
  color: var(--grau) !important;
}
.wd-action-btn > a:hover {
  color: var(--black);
}
/* Warenkorb Button */
.woocommerce-variation-add-to-cart {
  flex-wrap: inherit;
}
/* Variantenauswahl */
table.variations {
  margin-top: 20px;
}
/* Stock-Status im Single-Produkt */
.single-product .single_variation_wrap {
  display: flex;
  flex-flow: wrap;
}
/* Native Varianteninformation vor der Kaufzeile; Lieferstatus bleibt nach dem Formular. */
.single-product .summary form.variations_form .single_variation_wrap > .single_variation {
  height: auto !important; min-height: 0; margin: 0; width: 100%; flex: 0 0 100%; order: 0;
}
.single-product .summary .single_variation:empty,
.single-product .summary .single_variation:has(> .woocommerce-variation-description:empty):has(> .woocommerce-variation-price:empty),
.single-product .summary form.wd-price-outside .single_variation:has(> .woocommerce-variation-description:empty) {
  display: none !important;
}
.single-product .summary form.variations_form .single_variation:has(> .woocommerce-variation-description:not(:empty)),
.single-product .summary form.variations_form:not(.wd-price-outside) .single_variation:has(> .woocommerce-variation-price:not(:empty)) {
  margin-bottom: 16px;
}
.single-product .summary form.variations_form .single_variation > :is(.woocommerce-variation-description, .woocommerce-variation-price) {
  margin: 0;
}
.single-product .summary form.variations_form .woocommerce-variation-description {
  width: 100%; color: var(--dunkelgrau); font-family: var(--wd-text-font);
  font-size: 16px; line-height: 1.5; font-weight: 600; overflow-wrap: break-word;
}
.single-product .summary form.variations_form .woocommerce-variation-description > :first-child { margin-top: 0; }
.single-product .summary form.variations_form .woocommerce-variation-description > :last-child { margin-bottom: 0; }
.single-product .summary form.variations_form .single_variation:has(> .woocommerce-variation-description:not(:empty)) > .woocommerce-variation-price:not(:empty) {
  margin-top: 12px;
}
.flex-status-and-time {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 10px;
}
.single-product .flex-status-and-time .stock,
.single-product .flex-status-and-time .woocommerce-variation-availability,
.single-product .flex-status-and-time .delivery-time-info-mn {
  margin: 0;
  line-height: 1.5;
}
/* Sticky Add to Cart (Mobil) */
.cart.customize-unpreviewable .quantity {
  display: none;
}
.wd-quantity-overlap div.quantity:not(.hidden) + .single_add_to_cart_button {
  padding-left: 0;
  padding-right: 0;
}
@media (max-width: 1024px) {
  .sticky-toolbar-on .wd-sticky-btn {
    bottom: 45px;
    height: 100px;
  }
  .wd-quantity-overlap div.quantity:not(.hidden) + .single_add_to_cart_button {
    height: var(--ah-purchase-control-height, 80px);
  }
  .wd-reset-bottom-md .wd-reset-var {
    margin: 0;
    position: relative;
  }
}

/* ==========================================================================
   8. Notify Me & Kontaktformular
   ========================================================================== */
.cwginstock-subscribe-form .panel-primary {
  background: #fff;
  border: 1px solid var(--black);
  border-radius: 30px;
  margin-top: 20px;
  margin-bottom: 0;
  width: 90%;
}
#notify-text {
  color: var(--black);
  font-weight: 600;
  margin: 0;
  padding: 10px;
}
#notify-button {
  font-size: 21px;
}
.cwginstocksuccess,
.cwginstockerror {
  color: var(--black);
  padding: 5px;
  font-size: 14px;
  margin-bottom: 15px;
}
.form.customize-unpreviewable .input {
  cursor: auto !important;
}
.cwginstock-subscribe-form .panel-primary > .panel-heading {
  border: none;
  margin-bottom: 15px;
  margin-top: 10px;
  background-color: transparent;
}
.cwginstock-subscribe-form .panel-primary > .panel-heading h4 {
  color: var(--dunkelgrau);
  margin-bottom: 0;
  font-weight: 600;
  background-color: transparent;
}
.cwginstock-subscribe-form .panel-body {
  padding: 0;
}
.cwgstock_button {
  text-transform: uppercase;
  font-weight: 900;
  height: 60px;
  /* Original ungültige Deklaration aus der Quelle beibehalten: size: 30px; */
  font-size: 21px;
  border-radius: 20px;
  background-color: var(--btn-accented-bgcolor);
  color: var(--dunkelgrau);
}
:is(.btn, .button, button, [type="submit"], [type="button"]):hover {
  background-color: var(--btn-accented-bgcolor);
}

/* Meldung im Widerrufsformular */
.eu-owb-form-fields .woocommerce-info.notice {
  background-color: var(--neon-rot) !important;
  color: var(--weiss);
}

/* ==========================================================================
   9. Dynamische Rabatte & Tabellen
   ========================================================================== */
.wd-dynamic-discounts .woocommerce-Price-amount.amount {
  font-size: 14px !important;
}
.wd-dynamic-discounts .wd-active {
  color: var(--dunkelgrau);
}
.wd-dynamic-discounts table td {
  padding: 10px 12px;
  border: 1px solid var(--black);
}
.wd-dynamic-discounts tbody tr:is(:hover, .wd-active) {
	background-color: rgb(119 255 157)!important;
}
.wd-dynamic-discounts table th {
  text-transform: uppercase;
  font-size: 14px;
  font-family: Rubik;
  color: var(--dunkelgrau);
  font-weight: 600;
  padding-top: 12px !important;
  padding-bottom: 10px;
  border: 1px solid var(--black);
}

/* ==========================================================================
   10. WooCommerce Bestell-/Thankyou-Seiten
   ========================================================================== */
/* Status Meldung */
div.wc-block-components-notice-banner {
  border-radius: 50px;
}
.cart-content-wrapper > *:not(:is(.cart-data-form, .cart-totals-section)) {
  margin-bottom: 30px;
}
/* Tab Beschreibung */
.wd-nav[class*="wd-style-"] > li:is(.active) > a {
  background-color: var(--grau-hintergrund);
  padding-left: 10px;
  padding-right: 10px;
  border: 1px solid var(--black);
  border-top: none;
  background-color: var(--hellgrau);
}
.wd-nav[class*="wd-style-underline"] .nav-link-text:after {
  display: none;
}
.product-tabs-wrapper {
  border-top: 1px solid var(--dunkelgrau) !important;
  border-bottom: 1px solid var(--dunkelgrau);
  background-color: #fff !important;
}
/* Zusätzliche Informationen */
.shop_attributes tr {
  border-bottom: 0.5px solid var(--black);
  line-height: 2;
}
/* Order Received / Thankyou */
body.woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received {
  border-radius: 18px;
  background: var(--btn-accented-bgcolor);
  color: #000;
  border: 1px solid #000;
}
.wc-bacs-bank-details-heading + .wc-bacs-bank-details-account-name {
  margin-top: 0;
  padding-left: 10px;
}
.wc-bacs-bank-details-heading {
  margin-left: 10px;
}
:is(.woocommerce-thankyou-order-details, .wc-bacs-bank-details) li {
  flex: auto;
  padding: 10px;
  text-align: left;
}
.wc-item-meta li > * {
  margin-bottom: 0;
}
.woocommerce-bacs-bank-details {
  background-color: #fff;
  padding: 30px;
  border: 1px solid var(--dunkelgrau);
}
.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-table--order-details tfoot tr:last-child td > .amount,
.woocommerce-table--order-details tfoot tr:nth-last-child(3) th,
.woocommerce-table--order-details tfoot tr:nth-last-child(3) td,
.woocommerce-table--order-details tfoot tr:nth-last-child(4) th,
.woocommerce-table--order-details
  tfoot
  tr:nth-last-child(4)
  td
  .woocommerce-Price-amount.amount {
  text-transform: uppercase;
  font-size: 11px;
  color: var(--grau) !important;
}
.woocommerce-gzd-checkout.woocommerce-checkout .shop_table {
  border: 1px solid var(--dunkelgrau);
}
.woocommerce-table--order-details tfoot tr:nth-last-child(2) th,
.woocommerce-table--order-details tfoot tr:nth-last-child(2) td {
  font-size: 150%;
  background-color: #fff;
  text-transform: uppercase;
  font-weight: bolder;
}
/* Lead Time */
.lead-time-separator {
  color: var(--grau);
  padding: 0 3px;
}

/* ==========================================================================
   11. Marke / Brand-Seiten
   ========================================================================== */
/* Hover bei Marke in Übersicht */
.elementor-widget-container .wd-col:not(.testimonial):hover,
.products-bordered-grid.elements-grid > .wd-col:hover,
.products-bordered-grid .wd-carousel-item:hover {
  background-color: #fff;
}

/* Produktbewertung Sterne */
.star-rating {
  color: var(--dunkelgrau);
  letter-spacing: 4px;
  font-weight: 600;
  font-size: 20px;
}
.woocommerce-product-rating {
  margin-bottom: 10px;
}
.woocommerce-product-rating {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.woocommerce-product-rating .star-rating { margin: 0; }
.woocommerce-product-rating .woocommerce-review-link {
  display: inline;
  font-family: inherit;
  font-size: 14px;
  font-weight: 400;
  color: var(--dunkelgrau);
}
/* Google reCAPTCHA Badge */
.grecaptcha-badge {
  visibility: hidden;
}
/* Menü Suchleiste */
[class*="wd-header-search-form"] input[type="text"] {
  min-width: 150px;
}

.wd-brands.wd-style-bordered.wd-layout-grid .wd-grid-g {
  border-bottom: none;
}
/* Brandseite Beschreibung */
.term-description {
  background-color: #fff;
  padding: 20px;
  border: 1px solid var(--black);
}
/* Brand Karusell */
.wd-brand-item:hover {
  opacity: 0.7;
}

/* ==========================================================================
   12. Blog, Content & Links
   ========================================================================== */
/* Blog Single Page */
body.single-post article.category-podcast .wd-post-image {
  display: none !important;
}

/* Blog übersicht anzeige */
.blog-design-list.blog-style-bg .wd-post-inner {
  border: solid 1px var(--black);
}
.wd-grid-g {
  gap: 20px;
}
/* ENDE Blog übersicht anzeige */

/* Links Text */
.wd-text-block a {
  text-decoration: underline !important;
}

/* ==========================================================================
   13. Checkout
   ========================================================================== */
/* Checkout */

/* Gutschein ausblenden */
.woocommerce-form-coupon-toggle {
  display: none;
}

/* Abstand Stripe Express Checkout */
#wcpay-express-checkout-button-separator {
  margin-bottom: 0px;
}

.wc_payment_method.payment_method_bacs {
  margin-bottom: 0px;
}

/* Checkout > Zahlungsart auswählen > Tabelle */
#payment .payment_methods {
  border: 1px solid var(--black);
  background-color: #fff;
}

#payment .payment_methods > li {
  border-bottom: 1px solid var(--hellgrau);
}

/* Rechnungs- und Lieferdetails */
.woocommerce-billing-fields,
.woocommerce-shipping-fields {
  border: 1px solid var(--black);
  background: #eee;
  padding-top: 28px;
  padding-left: 28px;
  padding-right: 28px;
  margin-bottom: 20px;
}
.form.woocommerce-checkout {
  margin: 0px;
}
:is(
  .woocommerce-checkout > .checkout-order-review,
  .woocommerce-order-pay #order_review
) {
  padding: 0px;
}
.woocommerce-checkout > .customer-details .woocommerce-billing-fields {
  margin-top: 0px;
}

.wc-gzd-order-submit {
  margin-bottom: 32px;
}

/* Zahlungsart */
.woocommerce-checkout-review-order {
  background-color: #eee;
}

.woocommerce-checkout #payment ul.payment_methods > li {
  margin-bottom: 0 !important;
}

/* Text: von Abholstation vorgegeben */
.wc-shiptastic-managed-by-pickup-location-notice {
  padding-top: 15px;
  padding-right: 24px;
}

#pickup_location_customer_number {
  width: 95%;
}
@media (min-width: 769px) and (max-width: 1024px) {
  form.woocommerce-checkout > .checkout-order-review {
    flex-grow: 1;
    max-width: 50%;
  }
}

/* Lieferadresse wenn geschlossen abstand */
form.woocommerce-checkout
  > :is(.customer-details, .woocommerce-NoticeGroup)
  > * {
  min-height: 77px;
}

/* Zahlungsmethoden */

#payment .payment_methods li .input-radio {
  display: none !important;
}

.woocommerce-checkout-payment label {
  font-weight: bold;
}

#payment .payment_methods li .payment_box {
  padding: 0px 22px 22px 22px;
}

/* Zeilenabstand Auswahl */
ul.wc_payment_methods li label {
  display: block;
  padding: 15px;
}

.woocommerce-checkout #payment .payment_methods input:checked ~ label {
  display: block;
}

#payment
  .payment_methods
  li[class*="payment_method_woocommerce_payments"]
  label {
  display: block !important;
}

.payment_methods .payment_box:before {
  display: none;
}

/* Hintergrundfarbe wenn ausgewählte */
.woocommerce-checkout #payment .payment_methods input:checked ~ label,
.woocommerce-checkout #payment .payment_methods input:checked ~ .payment_box {
  background-color: rgba(137, 200, 99, 0.5);
}
.payment_methods .payment_box {
  margin-top: 0px;
}

.wc_payment_method.payment_method_woocommerce_payments {
  margin-bottom: 0px;
}

/* Standard: kein Haken sichtbar */
.woocommerce-checkout
  #payment
  ul.payment_methods
  li.wc_payment_method
  label::before {
  content: "";
  width: 12px;
  height: 12px;
  display: inline-block;
  flex: 0 0 12px;
  opacity: 0;
  transform: scale(0.8);
  transition:
    opacity 0.2s ease,
    transform 0.2s ease;
  margin-right: 8px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='%23000000' d='M10.215 1 4.292 8.558 1.414 5.68 0 7.094l3.676 3.676a.999.999 0 0 0 .707.293l.06-.002a.997.997 0 0 0 .727-.381l6.619-8.446L10.215 1Z'/%3E%3C/svg%3E");
}

label[for="wc-stripe-new-payment-method"]::before {
  display: none !important;
  content: none !important;
}
label[for="wc-stripe-new-payment-method"] {
  padding-left: 0 !important;
  background-color: transparent !important;
  font-weight: normal;
}

/* Nur bei aktiver / ausgewählter Zahlungsart sichtbar */
.woocommerce-checkout
  #payment
  ul.payment_methods
  li.wc_payment_method
  input[type="radio"]:checked
  + label::before {
  opacity: 1;
  transform: scale(1);
}

/*--- ENDE Checkout ---*/

/* ==========================================================================
   14. Warenkorb
   ========================================================================== */
/* Warenkorb */
@media (max-width: 768.98px) {
  .shop_table_responsive tr {
    border-bottom: 1px solid var(--black);
  }
  .shop_table_responsive td:not(:last-child).product-price,
  .shop_table_responsive td:not(:last-child).product-quantity {
    border-bottom: 1px solid var(--black);
  }

  .cart-content-wrapper .wd-coupon-form {
    border: 1px solid var(--black);
  }
  .woocommerce-shipping-methods label {
    display: flex;
    justify-content: space-between;
  }

  .woocommerce-Price-amount.amount {
    text-align: right;
  }
}
.checkout-button.button.alt.wc-forward {
  margin-top: 18px;
  padding: 18px;
  font-size: 16px;
}

.cart-totals-inner tr.shipping td > * {
  margin-bottom: 0;
}

/* ENDE Warenkorb */

/* ==========================================================================
   15. Mein Konto
   ========================================================================== */
/* Mein Konto */
.wd-builder-off .wd-nav-my-acc {
  --nav-border: 1px solid var(--black);
}

.wd-builder-off .wd-nav-my-acc > li > a .wd-nav-icon {
  color: var(--dunkelgrau);
}

.wd-builder-off .wd-nav-my-acc > li:hover > a .wd-nav-icon {
  color: var(--grau);
}

.wd-builder-off .wd-nav-my-acc {
  --nav-bg-hover: var(--weiss);
}

.wd-my-account-sidebar {
  border-inline-end: 1px solid var(--black);
}

.wd-builder-off .woocommerce-MyAccount-title {
  border-bottom: 1px solid var(--black);
}

/* ENDE Mein Konto */

/* ==========================================================================
   16. Shop, Produktübersichten & Labels
   ========================================================================== */
/* Shop Übersicht Produkte */
.products-bordered-grid:where(.wd-loop-builder-off).elements-grid > .wd-col {
  padding: 0 !important;
}
.wd-loop-builder-off :where(.wd-product-wrapper, .product-element-bottom) {
  padding: calc(var(--wd-gap) / 2);
}
/* Gemeinsamer Innenabstand unter dem Preis gerahmter Produktkarten. */
.products-bordered-grid:where(.wd-loop-builder-off) .wd-product-wrapper {
  padding-bottom: 24px !important;
}
/* ENDE Shop Übersicht Produkte */

/* Produktseite Ausverkauft Wishlist */
.wd-wtl-form {
  border: 1px solid var(--black) !important;
  background: var(--weiss);
}
/* ENDE Produktseite Ausverkauft Wishlist */

/* ==========================================================================
   17. Header, Sticky-Menü & mobile Produktansicht
   ========================================================================== */
/* Hauptmenü */
.wd-cart-number.wd-tools-count {
  color: var(--black) !important;
}
/* ENDE Hauptmenü */

/* Sticky Menü */
.wd-action-btn .wd-check-icon:before {
  color: var(--black) !important;
}
/* ENDE Sticky Menü */

/* Produkt Mobil */
@media (max-width: 1024px) {
  .product-tabs-wrapper {
    padding-top: 20px;
  }
}
/* ENDE Produkt Mobil */

/* Marke Kategorie Übersicht */
.wd-brands.wd-with-brd.wd-layout-grid .wd-grid-g > .wd-col {
  margin: -1px 0 0 -1px;
}
/* ENDE Marke Kategorie Übersicht */

/* Sticky Menü auf Produktseite */

@media (max-width: 1024px) {
  .sticky-toolbar-on .wd-sticky-btn {
    background-color: #fff;
  }

  .wd-sticky-add-to-cart.button.alt {
    margin: 5%;
  }
}
/* ENDE Sticky Menü auf Produktseite */

/* ==========================================================================
   18. Reviews, Produktdetails & Newsletter
   ========================================================================== */
/* Review Bereich Produkt */

.wd-single-reviews.wd-layout-two-column.wd-form-pos-after {
  /* Original ungültige Deklaration aus der Quelle beibehalten: margin: px; */
  border: 1px solid #000;
  padding: 50px;
  background-color: var(--hellgrau);
}

.wd-reviews-heading {
  margin-bottom: 40px;
  font-size: 16px;
}

.comment-reply-title {
  margin-bottom: 30px;
  font-size: 16px;
}

.comment-form-comment {
  margin-top: 15px;
}

label[for="wd-add-img-btn"] {
  border-bottom: 1px solid #000;
}

.wd-hint:before {
  background-color: transparent;
  color: #000;
  border: 1px solid #000;
}

.wd-progress-bar .progress-bar {
  background-color: var(--neon-dunkelgelb) !important;
}

.stars.selected a:before {
  color: #ffcb00;
}

/* Ende Review Bereich Produkt */

/* Produkt-Label auf bestimmten Seiten ausblenden */

/* Startseite */
.page-id-25596 .product-labels {
  display: none;
}

/* Ende Produkt-Label auf bestimmten Seiten ausblenden */

/* Newsletterformular */
div.wpcf7 input[type="submit"] {
  margin-top: 10px;
  margin-bottom: 10px;
}

/* ==========================================================================
   19. Blog-Beitrag, Suche & Produkt-Carousel
   ========================================================================== */
/* Blog Beitrag */

.wd-post-cat.wd-style-with-bg > a {
  color: #000;
}
.wd-post-meta,
.wd-single-post-img img {
  display: none !important;
}

.wd-page-nav {
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
}

.back-to-archive {
  --wd-link-color: #000;
}

.wd-page-nav-icon {
  border: solid 1px #000;
}

.wd-page-nav-btn:hover .wd-entities-title {
  color: #000;
}

.wd-post:hover .post-img-wrapp a {
  transform: none;
}

.wd-grid-f-col:not(#customer_login) > .wd-col:hover {
  padding: 0;
  transform: none;
}

.wd-post .article-inner {
  border: solid 1px #000;
}

.post-image-mask,
.post-img-wrapp a:after {
  display: none;
}

.read-more-section a {
  color: #000;
}

.article-inner .entry-meta,
.article-inner .hovered-social-icons,
.entry-content.wd-post-desc {
  display: none;
}

/* Eingebettetes Video */
.elementor-wrapper iframe {
  width: 98% !important;
  /* Original unvollständiges Fragment aus der Quelle beibehalten: margin */
}

/* Suchleiste */

.view-all-results {
  color: white !important;
  background: var(--neon-dunkelgruen);
}

.view-all-results:hover {
  background: #66bb6a !important;
  transition: background 0.3s ease;
}

.wd-dropdown.wd-opened {
  border: 1px solid #000;
  border-top: none;
}

.view-all-results {
  border-top: none;
  border-bottom: none;
  /* Original ungültige Deklaration aus der Quelle beibehalten: border-color: none; */
  line-height: 53px;
}

/* Carousel auf Produktseite */
.products-bordered-grid .wd-carousel-item {
  padding: 0;
  padding-bottom: calc(var(--wd-gap) / 2);
}

/* ==========================================================================
   20. Cookie-Banner
   ========================================================================== */
/* Cookies Banner */

.cookie-text {
  font-size: 0.8rem;
  line-height: 1.6;
  margin: 0;
  margin-top: 6px;
  padding: 0;
  width: 68%;
}

.elementor .cookie-affe {
  margin-bottom: -60px !important;
  max-width: 400px !important;
}

.wd-cookies-popup {
  height: 120px;
  background-color: var(--hellgrau);
}

/* Alternative ausgeblendete Positionierung aus der Quelle:
.wd-cookies-popup {
  transform: translate3d(0, 400%, 0);
}
*/

/*.wd-cookies-popup {
	transform: translateY(600px);}*/

.cookies-buttons {
  display: flex;
  flex-direction: column-reverse;
  gap: 10px;
  align-items: center;
}
.cookies-buttons > a {
  margin-inline-end: 0;
  text-transform: none !important;
}

.cookies-buttons .cookies-more-btn {
  border-bottom: none;
}
.wd-cookies-popup {
  box-shadow: none !important;
  border-top: solid 1px black;
}

/* Cookie Banner ausblenden inkl. Affe 
.wd-cookies-popup {
  position: fixed !important; 
  overflow: hidden;
}*/

/* Ende Cookie Banner */

/************/
/* ==========================================================================
   21. Pagination & mobiles Menü
   ========================================================================== */
/* Pagination bei Suche */
nav[class*="-pagination"] li .current {
  background-color: var(--neon-gelb);
}

/* Mobiles Menü */

.wd-nav-mobile li:is(.current-menu-item, .wd-active) > a {
  color: var(--dunkelgrau);
  background-color: var(--hellgrau);
}

.wd-nav-mobile > li > a {
  text-decoration: none;
  position: relative;
}

.wd-nav-mobile > li > a span {
  text-decoration: none;
}

.wd-nav-mobile > li > a:hover span {
  text-decoration: underline;
  color: #000;
}

.wd-nav-mobile > li > a::before {
  text-decoration: none;
  color: #000;
}

.wd-nav-mobile > li > a,
.wd-nav-mobile > li > ul li > a {
  border-bottom: 1px solid #000;
}

.mobile-nav .wd-nav-opener {
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
}

.mobile-tab-title.mobile-pages-title {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}

.mobile-tab-title.mobile-categories-title {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

.wd-nav-mobile{
	    --nav-color-hover: var(--nav-color)!important;}

.mobile-nav .wd-nav-opener.wd-active{
	color: var(--color-gray-900)!important;}

/* Mobiles Menü Bilder */
.sub-sub-menu .wd-nav-img {
    margin-right: 10px !important;
    width: 40px !important;
}

.wd-sub-menu li>a img, .wd-nav-img {
	max-height: 40px;
}


/* iPhone-Prüfung: vorhandene Checkout-Elemente in einem Rechnungskasten. */
.woocommerce-checkout .ah-checkout-billing-group { border: 1px solid #000; background: #eee; padding: 28px; margin-bottom: 20px; }
.woocommerce-checkout .ah-checkout-billing-group .woocommerce-billing-fields { border: 0; background: transparent; padding: 0; margin: 0; }
.woocommerce-checkout .ah-checkout-billing-group .woocommerce-account-fields { margin: 0; }
/* DHL lädt diesen Platzhalter auch ohne auswählbare Zusatzservices. */
.woocommerce-checkout .dhl-preferred-service-content:empty { display: none !important; }
@media (max-width: 767px) {
  /* Bild und Aktionen bekommen getrennte Flächen, auch in mobilen Carousels. */
  .product-grid-item.wd-product.wd-hover-icons .wrapp-buttons { position: static; inset: auto; transform: none; margin: 10px 0; width: 100%; }
  .product-grid-item.wd-product.wd-hover-icons .wd-buttons { transform: none; opacity: 1; visibility: visible; }
}

/* Affenhand: nur Links im Woodmart-Anmeldefenster, 2026-10-09. */
:is(.wd-dropdown-register, .login-form-side) .create-account-link,
:is(.wd-dropdown-register, .login-form-side) .login-form-footer .lost_password {
  color: #333333;
}
:is(.wd-dropdown-register, .login-form-side) .create-account-link:is(:hover, :focus-visible),
:is(.wd-dropdown-register, .login-form-side) .login-form-footer .lost_password:is(:hover, :focus-visible) {
  color: #000000;
  text-decoration: underline;
}

/* Affenhand: Kontodropdown ohne Schatten, mit 1px-Kontur. */
.wd-dropdown.wd-dropdown-register {
  box-shadow: none;
  border: 1px solid #000;
}

/* Affenhand 2026-10-09: Kontofenster am rechten Symbolrand begrenzen. */
.wd-header-my-account .wd-dropdown.wd-dropdown-register {
  left: auto;
  right: 0;
  margin-inline: 0;
  width: 350px;
  max-width: calc(100vw - 32px);
  max-height: calc(100dvh - 160px);
  overflow-y: auto;
  box-sizing: border-box;
}
.wd-dropdown-register .wd-heading { flex-wrap: wrap; gap: 8px 12px; }
:is(.wd-dropdown-register, .login-form-side, .wd-registration-page) .login-form-footer .lost_password { color: #333; }
:is(.wd-dropdown-register, .login-form-side, .wd-registration-page) .login-form-footer .lost_password:is(:hover, :focus-visible) { color: #000; text-decoration: underline; }
.wd-registration-page .login-form-footer { flex-wrap: wrap; gap: 12px 20px; }
@media (min-width: 1025px) and (hover: hover) and (pointer: fine) {
  .wd-header-main-nav .nav-kategorie-burger.wd-event-hover > .wd-dropdown-menu { transition-delay: .45s; pointer-events: auto; }
  .wd-header-main-nav .nav-kategorie-burger.wd-event-hover:hover > .wd-dropdown-menu { transition-delay: 0s; }
}

/* Kategorie-Inhalt während der Schließfrist erreichbar halten. */
@media (min-width: 1025px) and (hover: hover) and (pointer: fine) {
  .wd-header-main-nav .nav-kategorie-burger.wd-event-hover > .wd-dropdown-menu,
  .wd-header-main-nav .nav-kategorie-burger.wd-event-hover > .wd-dropdown-menu .wd-sub-menu-wrapp { pointer-events: auto !important; }
  .wd-header-main-nav .nav-kategorie-burger.wd-event-hover > .wd-dropdown-menu .wd-dropdown.wd-opened { visibility: inherit !important; }
}

/* Affenhand: kompakte sichtbare Desktop-Suche 2026-10-09 */
@media (min-width: 1025px) {
  .whb-general-header .whb-column8 { justify-content: flex-start; min-width: 0; }
  .whb-column8 > .whb-gs8bcnxektjsro21n657 { flex: 0 0 auto; }
  .whb-column8 > .whb-js3a6ukcwf1zjmop9ppn { flex: 0 0 auto; }
  .whb-js3a6ukcwf1zjmop9ppn > .wd-nav {
    justify-content: flex-start; flex-wrap: nowrap;
  }
  .whb-js3a6ukcwf1zjmop9ppn > .wd-nav > li > a { white-space: nowrap; }
  .whb-column8 > .whb-9x1ytaxq7aphtb3npidp {
    --wd-search-form-width: 100%;
    flex: 1 1 0%; min-width: 0; width: auto; max-width: none;
  }
  .whb-9x1ytaxq7aphtb3npidp form.searchform {
    width: 100%; min-width: 0; max-width: 100%;
  }
  .whb-9x1ytaxq7aphtb3npidp input[type="text"] { min-width: 0; }
  .whb-column8 > .whb-d6tcdhggjbqbrs217tl1 {
    flex: 0 0 15px; margin-inline-start: 0;
  }
  .whb-column8 > :is(.whb-vssfpylqqax9pvkfnxoz, .whb-a22wdkiy3r40yw2paskq,
    .whb-p2jvs451wo69tpw9jy4t, .whb-nedhm962r512y1xz9j06) { flex: 0 0 auto; }
}
/* Ende Affenhand kompakte Desktop-Suche */

/* Affenhand: Hauptmenue-Wechsel schliesst vorheriges Dropdown sofort. */
@media (min-width: 1025px) and (hover: hover) and (pointer: fine) {
  .wd-header-main-nav > .wd-nav:has(> li:hover) > li:not(:hover) > .wd-dropdown-menu {
    transition: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}
/* Ende Affenhand Hauptmenue-Wechsel */

/* Affenhand: Suchergebnisse buendig mit dem runden Header-Suchfeld. */
[class*="wd-header-search-form"] .wd-search-results-wrapper > .wd-dropdown-results {
  inset-inline: 0;
  top: 8px;
  width: auto;
  border: 1px solid var(--black, #000);
  border-radius: var(--wd-form-brd-radius);
  overflow: hidden;
  background-color: var(--weiss, #fff);
  box-shadow: 0 4px 12px rgba(0, 0, 0, .08);
}
/* Ende Affenhand Header-Suchergebnisse */

/* Affenhand: angemeldetes Kontomenue innerhalb des Desktop-Fensters. */
@media (min-width: 1025px) {
  .whb-header .wd-header-my-account > .wd-dropdown.wd-dropdown-my-account {
    left: auto;
    right: 0;
    margin-inline: 0;
    max-width: calc(100vw - 32px);
    max-height: calc(100dvh - 160px);
    overflow-y: auto;
    overflow-x: hidden;
    box-sizing: border-box;
  }
}
/* Ende Affenhand Kontomenue-Begrenzung */

/* Affenhand: native Mausbruecke am Kontodropdown erhalten. */
@media (min-width: 1025px) {
  .whb-header .wd-header-my-account > .wd-dropdown:is(.wd-dropdown-register, .wd-dropdown-my-account) {
    overflow: visible;
    max-height: none;
  }
  .whb-header .wd-header-my-account > .wd-dropdown-register > .login-dropdown-inner {
    max-height: calc(100dvh - 210px);
    overflow-y: auto;
  }
  .whb-header .wd-header-my-account > .wd-dropdown-my-account > .wd-sub-menu {
    max-height: calc(100dvh - 160px);
    overflow-y: auto;
    margin-bottom: 0;
  }
}
/* Ende Affenhand Konto-Mausbruecke */

/* Affenhand: Kontodropdown-Trennlinien 1px schwarz. */
.whb-header .wd-header-my-account .wd-dropdown-my-account .wd-sub-menu > li:not(:last-child),
.whb-header .wd-header-my-account .wd-dropdown-register .wd-heading {
  border-bottom: 1px solid #000;
}
/* Ende Affenhand Konto-Trennlinien */

/* AH Markenübersicht: zusammenhängendes Raster, 12.10.2026 */
.elementor-element-c831d25 .wd-brands.wd-layout-grid.wd-with-brd > .wd-grid-g {
	gap: 0 !important;
}
.elementor-element-c831d25 .wd-brands.wd-layout-grid.wd-with-brd > .wd-grid-g > .wd-col {
	/* Vorhandene Rahmen überlappen um 1 px; eine unvollständige letzte Zeile bleibt offen. */
	margin: -1px 0 0 -1px;
	padding: 0;
}
.elementor-element-c831d25 .wd-brands.wd-layout-grid.wd-with-brd .wd-brand-item {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	height: 100%;
	min-height: 162px;
	border: 1px solid #000;
	border-radius: 0;
}
.elementor-element-c831d25 .wd-brands.wd-layout-grid.wd-with-brd .wd-brand-item > a {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}
.elementor-element-c831d25 .wd-brands.wd-layout-grid.wd-with-brd .wd-brand-item > img {
	object-fit: contain;
}
@media (max-width: 767px) {
	.elementor-element-c831d25 .wd-brands.wd-layout-grid.wd-with-brd > .wd-grid-g {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.elementor-element-c831d25 .wd-brands.wd-layout-grid.wd-with-brd .wd-brand-item {
		min-height: 120px;
		padding: 24px 16px;
	}
}


/* Affenhand: seitlicher Woodmart-Warenkorb – 13.10.2026 */
/* Ablage: Woodmart > Theme Settings > Custom CSS. DEV. */

.cart-widget-side {
  border-inline-start: 1px solid #000;
  background: #fff;
  color: var(--dunkelgrau, #333);
}

/* Kopfbereich */
.cart-widget-side .wd-heading {
  padding: 18px 24px;
  border-bottom: 1px solid #000;
}
.cart-widget-side .wd-heading .title {
  font-size: 26px;
  line-height: 1.15;
}
.cart-widget-side .close-side-widget a {
  min-height: 44px;
  color: #000;
  font-size: 14px;
}

/* Produktzeilen: native Überlagerung und Ladezustände bleiben erhalten. */
.cart-widget-side .woocommerce-mini-cart > .mini_cart_item {
  gap: 16px;
  margin: 0;
  padding: 20px 24px;
  border-bottom: 1px solid #000;
}
.cart-widget-side .cart-item-image {
  flex: 0 0 72px;
  width: 72px;
  margin-inline-end: 0;
}
.cart-widget-side .cart-item-image img,
.cart-widget-side .mini_cart_item > img {
  width: 72px;
  max-width: 72px;
  height: 72px;
  object-fit: contain;
}
.cart-widget-side .cart-info {
  min-width: 0;
  padding-inline-end: 28px;
}
.cart-widget-side .cart-info .wd-entities-title {
  display: block;
  margin-bottom: 6px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.cart-widget-side .cart-info .wd-entities-title p,
.cart-widget-side .cart-info .variation,
.cart-widget-side .cart-info .wd-product-detail {
  font-family: var(--wd-text-font, inherit);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  color: var(--dunkelgrau, #333);
}
.cart-widget-side .cart-info .wc-gzd-cart-info {
  margin-block: 6px;
}
.cart-widget-side .cart-info span.quantity {
  margin-top: 10px;
  color: var(--dunkelgrau, #333);
  font-size: 14px;
  line-height: 1.4;
}
.cart-widget-side .cart-info span.quantity,
.cart-widget-side .cart-info span.quantity .woocommerce-Price-amount {
  color: var(--dunkelgrau, #333);
  font-family: var(--wd-text-font, inherit);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
}

/* Entfernen bleibt eine native, zugängliche Warenkorbaktion. */
.cart-widget-side .woocommerce-mini-cart .remove {
  top: 17px;
  inset-inline-end: 16px;
  width: 32px;
  height: 32px;
  border: 1px solid #000;
  border-radius: 50%;
  background: #fff;
  color: #000;
  line-height: 30px;
  box-shadow: none;
}
.cart-widget-side .woocommerce-mini-cart .remove:hover {
  background: var(--hellgrau, #f5f5f5);
  box-shadow: none;
}

/* Abschlussbereich: eine gemeinsame Kontur, Preis klar rechts. */
.cart-widget-side .shopping-cart-widget-footer:not(.wd-cart-empty) {
  padding: 20px 24px 24px;
  border-top: 1px solid #000;
  background: #fff;
}
.cart-widget-side .shopping-cart-widget-footer > :is(p, div) {
  padding-inline: 0;
}
.cart-widget-side .shopping-cart-widget-footer > .woocommerce-mini-cart__total {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 6px 12px;
  margin: 0 0 12px;
  padding: 0;
  border-top: 0;
  font-size: 18px;
}
.cart-widget-side .woocommerce-mini-cart__total .woocommerce-Price-amount {
  font-size: 26px;
  font-weight: 700;
  white-space: nowrap;
}
.cart-widget-side .woocommerce-mini-cart__total .tax_label {
  grid-column: 1 / -1;
  margin: 0;
  font-size: 13px;
}
.cart-widget-side .shopping-cart-widget-footer > p:not(.woocommerce-mini-cart__total):not(.woocommerce-mini-cart__buttons) {
  margin-bottom: 8px;
  color: #555;
  font-size: 13px;
  line-height: 1.5;
}
.cart-widget-side .woocommerce-mini-cart__buttons {
  margin: 16px 0 0;
}

/* Sekundäre Aktion weiß mit schwarzer Kontur; Kasse im vorhandenen Grün. */
.cart-widget-side .woocommerce-mini-cart__buttons a,
.cart-widget-side .wd-empty-mini-cart .btn {
  min-height: 48px;
  padding: 12px 20px;
  border: 1px solid #000;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  box-shadow: none;
}
.cart-widget-side .woocommerce-mini-cart__buttons a:not(.checkout) {
  background: #fff;
  color: #000;
}
.cart-widget-side .woocommerce-mini-cart__buttons a:not(.checkout):hover {
  background: var(--hellgrau, #f5f5f5);
}
.cart-widget-side .woocommerce-mini-cart__buttons a.checkout,
.cart-widget-side .wd-empty-mini-cart .btn {
  background: var(--neon-gruen, var(--btn-accented-bgcolor));
  color: var(--dunkelgrau, #333);
}
.cart-widget-side .woocommerce-mini-cart__buttons a:focus-visible,
.cart-widget-side .woocommerce-mini-cart .remove:focus-visible,
.cart-widget-side .close-side-widget a:focus-visible {
  outline: 2px solid #000;
  outline-offset: 3px;
}

@media (max-width: 480px) {
  .cart-widget-side .wd-heading {
    padding: 14px 16px;
  }
  .cart-widget-side .woocommerce-mini-cart > .mini_cart_item {
    gap: 14px;
    padding: 18px 16px;
  }
  .cart-widget-side .cart-item-image {
    flex-basis: 64px;
    width: 64px;
  }
  .cart-widget-side .cart-item-image img,
  .cart-widget-side .mini_cart_item > img {
    width: 64px;
    max-width: 64px;
    height: 64px;
  }
  .cart-widget-side .woocommerce-mini-cart .remove {
    inset-inline-end: 10px;
  }
  .cart-widget-side .shopping-cart-widget-footer:not(.wd-cart-empty) {
    padding: 18px 16px;
  }
}

/* Allgemeine Untertitel entfallen nur im seitlichen Warenkorb. */
.cart-widget-side :is(.woocommerce-product-subtitle, .woocommerce-loop-product-subtitle) { display: none; }
.cart-widget-side .cart-info .wc-gzd-item-desc { font-family: var(--wd-text-font); font-size: 13px; font-weight: 400; line-height: 1.45; }
.cart-widget-side .cart-info .wc-gzd-item-desc p { margin-bottom: 0; }
.cart-widget-side .shopping-cart-widget-footer > .wc-gzd-total-mini-cart { padding-block: 0; border-top: 0; font-weight: 400; }
.cart-widget-side .shopping-cart-widget-footer > .wc-gzd-total-mini-cart .woocommerce-Price-amount { font-size: 13px; font-weight: 400; }


/* Affenhand: Anzahl und Mengenwaehler im Warenkorb zentrieren, 13.10.2026. */
@media (min-width: 769px) {
  .woocommerce-cart .woocommerce-cart-form .shop_table th.product-quantity,
  .woocommerce-cart .woocommerce-cart-form .shop_table td.product-quantity {
    text-align: center;
    padding-inline: 12px;
  }
  .woocommerce-cart .woocommerce-cart-form .shop_table td.product-quantity > .quantity {
    margin-inline: 0;
    vertical-align: middle;
  }
}
/* Ende Affenhand Warenkorb-Mengenspalte */


/* Affenhand: mehr Produktplatz und einzeilige Steuerangabe im Warenkorb, 13.10.2026. */
@media (min-width: 769px) {
  .woocommerce-cart .woocommerce-cart-form .shop_table .product-name {
    width: 100%;
    overflow-wrap: anywhere;
  }
  .woocommerce-cart .woocommerce-cart-form .shop_table .product-price {
    width: 88px;
    white-space: nowrap;
  }
  .woocommerce-cart .woocommerce-cart-form .shop_table .product-quantity {
    width: 126px;
    min-width: 126px;
  }
  .woocommerce-cart .woocommerce-cart-form .shop_table .product-subtotal {
    width: 128px;
    white-space: nowrap;
  }
}
.woocommerce-cart .cart_totals :is(.order-tax, .tax-rate, .tax-total) th,
.woocommerce-cart .cart_totals :is(.order-tax, .tax-rate, .tax-total) td::before,
.woocommerce-cart .cart_totals :is(.order-tax, .tax-rate, .tax-total) .amount {
  white-space: nowrap;
}
/* Ende Affenhand Produktplatz und Steuerangabe */


/* Affenhand: Zahlungsarten, schwarze 1px-Trennlinien und geschlossenes Stripe-Formular, 14.10.2026. */
.woocommerce-checkout #payment .payment_methods > li {
  border-bottom: 1px solid #000;
}
.woocommerce-checkout #payment .payment_methods > li:last-child {
  border-bottom: 0;
}
.woocommerce-checkout #payment .payment_method_stripe > .payment_box {
  /* Margins des Stripe-Frames bleiben innerhalb des ausgewaehlten Bereichs. */
  display: flow-root;
  margin-top: 0;
  padding-top: 0;
}
.woocommerce-checkout #payment .payment_method_stripe #wc-stripe-currency-selector {
  /* Stripe setzt diesen Abstand nach dem Laden inline erneut. */
  margin-top: 0 !important;
}
.woocommerce-checkout #payment .payment_method_stripe #wc-stripe-upe-form {
  margin-top: 0;
}
/* Unsichtbares natives Messfeld darf die Zahlungsbox nicht verbreitern. */
.woocommerce-checkout #payment #wc-stripe-hidden-style-input {
  max-width: 1px;
}
/* Ende Affenhand Zahlungsarten-Konturen */

/* Wunschliste: Abstand und Auswahl im Affenhand-Add-on-Stil (2026-10-14). */
.wd-product .wd-wishlist-product-actions {
  box-sizing: border-box;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 60px;
  padding: 12px 16px;
  margin-bottom: 0;
}
.wd-wishlist-product-actions .wd-wishlist-product-remove a {
  min-height: 36px;
  gap: 8px;
}
.wd-wishlist-product-actions .wd-wishlist-product-checkbox {
  flex: 0 0 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
}
.wd-wishlist-product-actions input.wd-wishlist-checkbox {
  appearance: none;
  -webkit-appearance: none;
  position: relative;
  box-sizing: border-box;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin: 0;
  padding: 0;
  border: 1px solid #000;
  border-radius: 2px;
  background: #fff;
  box-shadow: none;
  cursor: pointer;
  accent-color: #000;
}
.wd-wishlist-product-actions input.wd-wishlist-checkbox:checked {
  background: #000;
}
.wd-wishlist-product-actions input.wd-wishlist-checkbox:checked::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 4px;
  width: 10px;
  height: 6px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}
.wd-wishlist-product-actions :is(a, input):focus-visible {
  outline: 2px solid #000;
  outline-offset: 4px;
}
@media (max-width: 480px) {
  .wd-product .wd-wishlist-product-actions { padding-inline: 12px; }
}

/* Produktvergleich: alle Tabellen-Trennlinien 1px schwarz (2026-10-14). */
.wd-compare-table :is(th, td) {
  border-color: #000;
  border-bottom: 1px solid #000;
}
.wd-compare-table :is(th, td):not(:last-child) {
  border-inline-end: 1px solid #000;
}
.wd-compare-header {
  border-bottom: 1px solid #000;
}


/* Widerrufsbutton: gleiche vorhandene Rotdefinition wie der Formularhinweis. */
.elementor .elementor-element.elementor-element-1c29ff9 .elementor-button,
.elementor .elementor-element.elementor-element-1c29ff9 .elementor-button:hover,
.elementor .elementor-element.elementor-element-1c29ff9 .elementor-button:focus {
  background-color: var(--neon-rot);
  color: var(--weiss);
}


/* Sandmenge: native WCPA-Mengensteuerung im bestehenden Add-on-Stil. */
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1 {
  display: flex;
  align-items: stretch;
  position: relative;
  width: 180px;
  max-width: 100%;
  height: 48px;
  overflow: hidden;
  border: 1px solid #000;
  border-radius: 999px;
  background: #fff;
  box-sizing: border-box;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1 :is(.wcpa_minus_btn, .wcpa_plus_btn) {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 100%;
  padding: 0;
  color: var(--dunkelgrau, #262626);
  background: #fff;
  border: 0;
  border-radius: 0;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  user-select: none;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1 .wcpa_minus_btn { border-right: 1px solid #000; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1 .wcpa_plus_btn { border-left: 1px solid #000; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1 input.wcpa_quantity_field {
  flex: 1 1 0;
  width: 0;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0 4px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: #fff;
  color: var(--dunkelgrau, #262626);
  text-align: center;
  font-family: var(--wd-text-font);
  font-size: var(--wd-text-font-size, 14px);
  appearance: textfield;
  -moz-appearance: textfield;
}
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1 input::-webkit-inner-spin-button,
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1 input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.single-product .wcpa_wrap .wcpa_field_wrap .wcpa_quantity_wrap .wcpa_qty_style_custom_1:focus-within { outline: 1px solid #000; outline-offset: 3px; }
.single-product .wcpa_wrap .ah-sand-choice {
  display: grid;
  grid-template-columns: minmax(0, 180px) minmax(0, 1fr);
  gap: 0 16px;
  width: 100%;
  padding: 0;
  border: 0;
  min-width: 0;
}
.single-product .wcpa_wrap .ah-sand-choice .wcpa_field_label {
  width: 100%;
  margin: 0 0 10px;
  padding: 0;
  font-family: var(--wd-text-font) !important;
  font-size: var(--wd-text-font-size, 14px) !important;
  font-weight: var(--wd-text-font-weight, 400) !important;
  line-height: 1.4;
}
.single-product .wcpa_wrap .ah-sand-choice .wcpa_group_field { grid-column: 1; grid-row: 1; display: block; margin: 0; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_quantity_wrap { display: block; width: 100%; margin: 0; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_radio { display: none; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_label_wrap { display: block; margin: 0; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_label_wrap > label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.single-product .wcpa_wrap .ah-sand-choice .wcpa_qty_style_custom_1 input.wcpa_quantity_field { padding-right: 23px; font-weight: 600; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_qty_style_custom_1::after {
  content: "kg";
  position: static;
  transform: none;
  flex: 0 0 auto;
  pointer-events: none;
  font-size: var(--wd-text-font-size, 14px);
  color: var(--dunkelgrau, #262626);
}
.single-product .wcpa_wrap .ah-sand-choice .wcpa_field_bottom { grid-column: 2; grid-row: 1; align-self: center; justify-self: end; justify-content: flex-end; margin: 0; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_field_price { display: inline-block; margin: 0; white-space: nowrap; font-size: var(--wd-text-font-size, 14px); font-weight: 600; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_field_price::before { content: "+ "; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_field_error:empty { display: none; }
.single-product .wcpa_wrap .ah-sand-choice .wcpa_field_desc { grid-column: 1 / -1; grid-row: 2; margin: 10px 0 0; font-size: 13px; color: #666; }

/* Zahl und Einheit bilden gemeinsam eine zentrierte Gruppe. */
.single-product .wcpa_wrap .wcpa_field_wrap.ah-sand-choice .wcpa_quantity_wrap .wcpa_qty_style_custom_1 {
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 0 44px;
}
.single-product .wcpa_wrap .wcpa_field_wrap.ah-sand-choice .wcpa_quantity_wrap .wcpa_qty_style_custom_1 :is(.wcpa_minus_btn, .wcpa_plus_btn) {
  position: absolute;
  top: 0;
  bottom: 0;
}
.single-product .wcpa_wrap .wcpa_field_wrap.ah-sand-choice .wcpa_quantity_wrap .wcpa_qty_style_custom_1 .wcpa_minus_btn { left: 0; }
.single-product .wcpa_wrap .wcpa_field_wrap.ah-sand-choice .wcpa_quantity_wrap .wcpa_qty_style_custom_1 .wcpa_plus_btn { right: 0; }
.single-product .wcpa_wrap .wcpa_field_wrap.ah-sand-choice .wcpa_quantity_wrap .wcpa_qty_style_custom_1 input.wcpa_quantity_field {
  flex: 0 0 auto;
  width: 3ch;
  min-width: 1ch;
  max-width: 4ch;
  padding: 0;
  text-align: center;
  font-weight: 400;
  font-variant-numeric: tabular-nums;
}
@supports (field-sizing: content) {
  .single-product .wcpa_wrap .wcpa_field_wrap.ah-sand-choice .wcpa_quantity_wrap .wcpa_qty_style_custom_1 input.wcpa_quantity_field {
    field-sizing: content;
    width: auto;
  }
}


/* AH-KATEGORIEN-RASTER-20261018 START
   Kategorien-Landingpages DE/EN/FR; keine Produktarchive betroffen. */
:is(.page-id-856460,.page-id-898976,.page-id-898979) .ah-kategorien-heading {
  margin-bottom: 4px;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .ah-kategorien-heading .elementor-heading-title {
  font-family: var(--wd-title-font);
  font-size: clamp(28px,3vw,42px);
  font-weight: 700;
  line-height: 1.15;
  text-transform: none;
  color: #242424;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .ah-kategorien-intro {
  margin-bottom: 32px;
  color: #555;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .ah-kategorien-intro p { margin: 0; }
:is(.page-id-856460,.page-id-898976,.page-id-898979) .elementor-widget-wc-categories .products {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 0 !important;
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-top: 1px solid #000 !important;
  border-left: 1px solid #000 !important;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category {
  min-width: 0;
  width: auto;
  margin: 0;
  padding: 0 !important;
  border: 0 !important;
  border-right: 1px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  background: #f5f5f5;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 22px 20px 24px;
  overflow: visible;
  background: transparent;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-thumb {
  position: relative;
  aspect-ratio: 1;
  width: 100%;
  flex: 0 0 auto;
  overflow: hidden;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-image,
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category picture {
  display: block;
  width: 100%;
  height: 100%;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-content {
  position: static !important;
  inset: auto;
  width: 100%;
  padding: 22px 0 0 !important;
  margin: 0;
  text-align: center;
  background: transparent;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-entities-title {
  position: static !important;
  inset: auto;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.6em;
  margin: 0 0 8px;
  font-size: clamp(20px,1.65vw,28px);
  line-height: 1.3;
  text-transform: none;
  white-space: normal;
  overflow: visible;
  overflow-wrap: anywhere;
  -webkit-line-clamp: unset;
  color: #242424;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-count {
  display: block;
  margin: 0;
  color: #666;
  font-size: 14px;
  line-height: 1.5;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-count a { color: inherit; }
/* Woodmart-Zoom und einfahrende Texte vollständig deaktivieren. */
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category,
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category *,
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category::before,
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category *::before,
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category *::after {
  transition: none !important;
  animation: none !important;
  transform: none !important;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-count {
  opacity: 1 !important;
  visibility: visible !important;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category:focus-within {
  background: #ededed;
}
:is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .category-link:focus-visible {
  outline: 2px solid #000;
  outline-offset: -4px;
}
@media (hover:hover) and (pointer:fine) {
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category:hover { background: #ededed; }
}
@media (min-width:768px) and (max-width:1024px) {
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .elementor-widget-wc-categories .products { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width:767px) {
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .elementor-widget-wc-categories .products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-inner { padding: 16px 12px 18px; }
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-content { padding-top: 16px !important; }
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-entities-title { font-size: 20px; }
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .product-category .wd-cat-count { font-size: 13px; }
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .ah-kategorien-intro { margin-bottom: 24px; }
}
/* AH-KATEGORIEN-RASTER-20261018 END */




/* Kategorie-Seitentitel wie .ah-catalog-title: mobil einheitlich 30px. */
@media (max-width:767px) {
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .ah-kategorien-heading { margin-bottom: 0; }
  :is(.page-id-856460,.page-id-898976,.page-id-898979) .ah-kategorien-heading .elementor-heading-title { font-size: 30px; }
}


/* AH Galerie-Pagination 20261019: alle Bildpunkte auf gleicher Hoehe.
   Vertikale Listenabstaende neutralisieren; native horizontale Abstaende erhalten. */
.woocommerce-product-gallery .wd-nav-pagin {
  align-items: center;
}
.woocommerce-product-gallery .wd-nav-pagin > .wd-nav-pagin-item {
  margin-block: 0 !important;
  line-height: 0;
}
.woocommerce-product-gallery .wd-nav-pagin > .wd-nav-pagin-item > span {
  display: block;
}

/* AH Beitragsnavigation 20261020: schwarze Konturen im Seitenstil. */
.single-post .wd-builder-off .wd-page-nav {
  border-block: 1px solid #000;
}
.single-post .wd-page-nav .wd-page-nav-icon {
  border: 1px solid #000;
  color: #000;
}
.single-post .wd-page-nav .back-to-archive {
  --wd-link-color: #000;
  --wd-link-color-hover: #000;
}

/* AH Widerrufsformular 20261020: mehr Freiraum und runder Aktionsbutton. */
form.woocommerce-form-order-withdrawal-request:has(.form-row) {
  padding: 32px;
}
form.woocommerce-form-order-withdrawal-request .form-row {
  margin-bottom: 20px;
}
form.woocommerce-form-order-withdrawal-request .form-row-submit {
  margin-bottom: 0;
}
form.woocommerce-form-order-withdrawal-request .woocommerce-form-return_request__submit {
  border-radius: 999px;
  max-width: 100%;
  white-space: normal;
}
@media (max-width: 767px) {
  form.woocommerce-form-order-withdrawal-request:has(.form-row) {
    padding: 24px 20px;
  }
}


/* AH Kundenkonto 20261020: klare Konturen, keine Schatten oder orange Hinweisflächen. */
.woocommerce-account .wd-builder-off .wd-nav-my-acc {
  --nav-shadow: none;
}
.woocommerce-account .wd-nav-my-acc > li > a {
  box-shadow: none;
}
.woocommerce-account :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) {
  background: transparent;
  color: var(--dunkelgrau, #333);
  border: 1px solid #000;
  box-shadow: none;
  --wd-link-color: #000;
  --wd-link-color-hover: #000;
}
.woocommerce-account :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)::before {
  color: inherit;
}
.woocommerce-account :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) a:not(.button) {
  color: #000;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.woocommerce-account :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  max-width: 100%;
  padding: 10px 18px;
  margin: 4px 0 4px 8px;
  white-space: normal;
  text-align: center;
  background: var(--neon-gruen, #23fa5f);
  color: #000;
  border: 1px solid #000;
  border-radius: 999px;
  box-shadow: none;
  text-decoration: none;
}
.woocommerce-account :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) a:focus-visible {
  outline: 2px solid #000;
  outline-offset: 3px;
}
.woocommerce-account .woocommerce-order-details .shop_table tfoot :is(tr, th, td) {
  background: transparent;
}
@media (max-width: 767px) {
  .woocommerce-account :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) .button {
    margin-inline-start: 0;
  }
}

/* AH mobiles Menü 20261020: einheitliche schwarze 1px-Konturen. */
.mobile-nav {
  --brdcolor-gray-200: #000;
  --brdcolor-gray-300: #000;
  border-inline-start: 1px solid #000;
}
.mobile-nav .wd-nav-mobile > li > a,
.mobile-nav .wd-nav-mobile .wd-sub-menu > li > a {
  border-bottom: 1px solid #000;
}
.mobile-nav .wd-nav-opener { border-inline-start: 1px solid #000; }
.mobile-nav .wd-nav-mob-tab { border-bottom: 1px solid #000; }

/* Affenhand: deutsche Versandbezeichnung und Betrag in einer Zeile, 21.10.2026. */
.woocommerce-cart .cart_totals .woocommerce-shipping-methods label:is([for$="_shipping_provider_deutsche_post11"], [for$="_shipping_provider_dhl12"]) {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 6px;
  white-space: nowrap;
}
.woocommerce-cart .cart_totals .woocommerce-shipping-methods label:is([for$="_shipping_provider_deutsche_post11"], [for$="_shipping_provider_dhl12"]) .amount {
  flex-shrink: 0;
}

/* Affenhand: gleich breite Textoptionen, volle Formularbreite, 21.10.2026. */
.single-product .summary table.variations .wd-swatches-product:has(> .wd-swatch.wd-text):not(:has(> .wd-swatch.wd-bg)) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
  grid-auto-rows: 1fr;
  width: 100%;
  min-width: 0;
  gap: 12px;
}
.single-product .summary table.variations .wd-swatches-product:has(> .wd-swatch.wd-text):not(:has(> .wd-swatch.wd-bg)) > .wd-swatch.wd-text {
  width: auto;
  max-width: none;
  min-width: 0;
  height: auto !important;
  min-height: 48px;
  margin: 0;
  padding: 12px;
}
.single-product .summary table.variations .wd-swatches-product > .wd-swatch.wd-text .wd-swatch-text {
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
}

/* Affenhand: kompakte mobile Markenlogos auf den Startseiten, 22.10.2026. */
@media (max-width: 767px) {
  .ah-home-b .elementor-widget-wd_products_brands .wd-brand-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
  }
  .ah-home-b .elementor-widget-wd_products_brands .wd-brand-item img {
    width: var(--wd-brand-img-width, 95px);
    max-width: 100%;
    height: var(--wd-brand-img-height, 48px);
    max-height: 48px;
    object-fit: contain;
  }
}

/* Mobile Kopfsuche: Platzhalter voll lesbar, Löschknopf nur bei Eingabe reservieren. */
@media (max-width: 767px) {
  header .whb-mobile-left > .site-logo,
  header .whb-mobile-left > .wd-header-search-form-mobile {
    padding-inline: 5px;
  }
  header .wd-header-search-form-mobile input[type="text"]:placeholder-shown {
    padding-left: 12px;
    padding-right: 38px;
  }
}
@media (max-width: 379px) {
  header .whb-mobile-left > .site-logo img {
    max-width: 95px !important;
  }
}

/* Suche in Kopf und mobilem Menü: schwarze Konturen, durchgehende Trennung. */
:is(header, .mobile-nav) .wd-search-form form.searchform {
  border-radius: var(--wd-form-brd-radius, 35px);
  overflow: hidden;
}
:is(header, .mobile-nav) .wd-search-form form.searchform .wd-clear-search {
  top: 0;
  bottom: 0;
  height: auto;
  transform: none;
  border-right: 1px solid #000;
}
:is(header, .mobile-nav) .wd-search-form form.searchform .searchsubmit {
  inset-block: 0;
  inset-inline-end: 0;
  width: var(--wd-search-btn-w);
  height: auto;
  border-radius: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 36px 36px;
}
:is(header, .mobile-nav) .wd-search-form form.searchform .searchsubmit:is(:hover, :focus-visible, :active) {
  background-color: transparent;
  background-image: radial-gradient(circle closest-side, var(--neon-gruen, #23fa5f) 98%, transparent 100%);
  color: #fff;
}
:is(header, .mobile-nav) .wd-search-form form.searchform .searchsubmit:is(:hover, :focus-visible, :active)::after {
  color: #fff;
  opacity: 1;
}
.mobile-nav .wd-search-form form.searchform {
  border-radius: 0;
  border-bottom: 1px solid #000;
  box-shadow: none;
}
.mobile-nav .wd-search-form form.searchform .searchsubmit {
  border-radius: 0;
}
:is(header, .mobile-nav) .wd-search-form .wd-search-results {
  border-color: #000;
  border-width: 1px;
  box-shadow: none;
}
:is(header, .mobile-nav) .wd-search-form .wd-search-results :is(.autocomplete-suggestion, .wd-search-suggestions > div) {
  border-color: #000;
}

/* Mobile Kopfsuche: Vorschläge unter dem gesamten Header statt unter dem schmalen Feld. */
@media (max-width: 1024px) {
  header .wd-header-search-form-mobile .wd-search-results-wrapper {
    position: static;
  }
  header .wd-header-search-form-mobile .wd-search-results-wrapper > .wd-dropdown-results {
    top: 100%;
    inset-inline: 0;
    width: auto;
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;
    border: 1px solid #000;
    border-top: 0;
    border-radius: 0 0 18px 18px;
    background: #fff;
  }
  header .wd-header-search-form-mobile .wd-search-results :is(.wd-suggestion, .wd-all-results) {
    border-color: #000;
  }
}

/* Große Startseitensuche: Vorschau bündig zum Feld mit 8px Abstand. */
body .elementor .ah-hero-search .wd-search-form .wd-search-results-wrapper > .wd-dropdown-results {
  inset-inline: 0;
  top: 8px;
  width: 100%;
  max-width: 100%;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid #000;
  border-radius: 18px;
  overflow: hidden;
}
body .elementor .ah-hero-search .wd-search-results :is(.wd-suggestion, .wd-all-results) {
  border-color: #000;
}

/* Suchvorschauen: Außenkante nur einmal zeichnen. */
:is(header, .mobile-nav, .ah-hero-search) .wd-search-results .wd-all-results {
  border-bottom: 0;
}
.mobile-nav .wd-search-form .wd-search-results {
  border-inline: 0;
}

/* PayPal: Hintergrund der Bestellübersicht an die Seitenfläche angleichen. */
form.woocommerce-checkout #order_review:has(#payment_method_ppcp-gateway:checked) {
  background-color: var(--hellgrau, #f5f5f5);
}

/* Affenhand Checkout: ruhige native Checkboxen, ohne Änderung der Lieferadress-Box. */
.woocommerce-checkout form.checkout input[type="checkbox"] {
  accent-color: #595959;
}

/* Fitness-Sandsack: automatische Sandpacks hinter Ja/Nein */
.wcpa_form_outer .affenhand-sandsack-sand-automatisch { display:none!important; }

/* Fitness-Sandsack: Ja/Nein-Beschriftung mittig */
.wcpa_form_outer .affenhand-sandsack-sandwahl .wcpa_radio > label { position:relative!important; display:flex!important; align-items:center!important; justify-content:center!important; min-height:64px; text-align:center; }
.wcpa_form_outer .affenhand-sandsack-sandwahl .wcpa_radio > label > input[type=radio] { position:absolute!important; left:22px!important; top:50%!important; transform:translateY(-50%)!important; margin:0!important; }
.wcpa_form_outer .affenhand-sandsack-sandwahl .wcpa_radio > label > span { flex:0 0 auto; margin:0!important; text-align:center; }

/* Fitness-Sandsack: Preisposition bei Ja/Nein stabil */
.wcpa_form_outer .wcpa_row:has(> .affenhand-sandsack-sandwahl) { margin-bottom:0!important; }
.wcpa_form_outer .wcpa_row:has(> .affenhand-sandsack-sand-automatisch) { display:none!important; margin:0!important; }

/* Fitness-Sandsack: Lieferumfang in klar getrennten Zeilen */
body:is(.postid-857144,.postid-897418,.postid-897419) #tab-additional_information .wd-term-name { white-space:pre-line; }

/* Versandhinweis: auf schmalen Desktopbreiten nur die Versandbotschaft. */
@media(min-width:1025px) and (max-width:1199.98px){.whb-header_153799 .affenhand-topbar-secondary{display:none}}
