.elementor-9399 .elementor-element.elementor-element-f101488{--display:flex;}.elementor-9399 .elementor-element.elementor-element-821023a{--display:flex;}.elementor-9399 .elementor-element.elementor-element-196ffad{--display:flex;}.elementor-widget-media-carousel .elementor-carousel-image-overlay{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );text-decoration:var( --e-global-typography-accent-text-decoration );}.elementor-9399 .elementor-element.elementor-element-b8cb347.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-9399 .elementor-element.elementor-element-b8cb347 .elementor-swiper-button{font-size:20px;}.elementor-9399 .elementor-element.elementor-element-18c4210{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-9399 .elementor-element.elementor-element-0a0d969{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-decoration:var( --e-global-typography-primary-text-decoration );}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .related :is(.product, .price){text-align:left;justify-content:flex-start;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6.elementor-align-left a.woocommerce-LoopProduct-link{text-align:right;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6.elementor-align-right a.woocommerce-LoopProduct-link{text-align:left;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .related .onsale{display:block;left:20px;top:20px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .related .price del{display:inline-block;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related ul.products{display:grid;grid-template-columns:repeat(4, 1fr) !important;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related.slider-disabled ul.products{grid-gap:30px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .related .products li a:not(.woocommerce-LoopProduct-link, .add_to_cart_button, .product_type_simple, .product_type_external, .product_type_variable, :last-child){margin-right:10px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .related .products li a:not(.woocommerce-LoopProduct-link, .add_to_cart_button, .product_type_simple, .product_type_external, .product_type_variable){font-size:16px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .onsale{color:#FFFFFF;background-color:#4285f4;font-size:12px;font-weight:400;line-height:44px;width:44px;height:44px;border-radius:100px;padding:0px 0px 0px 0px;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .onsale{padding:0px 0px 0px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .related .product img{padding:0px 0px 8px 0px;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .related .product img{padding:0px 0px 8px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .woocommerce-loop-product__title{color:#101010;font-size:15px;font-weight:500;text-transform:none;line-height:20px;padding:0px 0px 8px 0px;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .woocommerce-loop-product__title{padding:0px 0px 8px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .products .star-rating{color:#fec42d;font-size:12px;margin:0px 0px 8px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .products .star-rating::before{color:#fec42d;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .products .star-rating{margin:0px 0px 8px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related :is(.price .amount){color:#101010;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .price :is(del, del span, del .amount){color:#101010;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related :is(.price, .price .amount, .price ins, .price del){font-size:18px;font-weight:700;line-height:24px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .price{padding:0px 0px 8px 0px;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .price{padding:0px 0px 8px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related :is(.swiper-button-prev, .swiper-button-next){font-size:25px;color:#FFFFFF;background-color:#3E3E3E;border-radius:0px 0px 0px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related :is(.swiper-button-prev svg, .swiper-button-next svg){width:25px;fill:#FFFFFF;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related :is(.swiper-button-next, .swiper-button-prev){width:40px;height:40px;line-height:40px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related :is(.swiper-button-prev, .swiper-button-next):hover{color:#FFFFFF;background-color:#332d2d;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related :is(.swiper-button-prev, .swiper-button-next){border-radius:0px 0px 0px 0px;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .swiper-pagination-bullet{background:#c9c9c9;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .swiper-pagination-bullet-active{border-color:#f03d3f;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .swiper-pagination{margin:20px 0px 0px 0px;}.rtl .elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related .swiper-pagination{margin:20px 0px 0px 0px;}@media(max-width:1024px){.elementor-9399 .elementor-element.elementor-element-b8cb347.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-9399 .elementor-element.elementor-element-18c4210{--grid-auto-flow:row;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related ul.products{display:grid;grid-template-columns:repeat(2, 1fr) !important;}}@media(max-width:767px){.elementor-9399 .elementor-element.elementor-element-b8cb347.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-9399 .elementor-element.elementor-element-18c4210{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-9399 .elementor-element.elementor-element-3208af6 .shopengine-related ul.products{display:grid;grid-template-columns:repeat(1, 1fr) !important;}}/* Start custom CSS *//* Cart V2 (Post 9399) -- MDMAWEAR Design. Nur diese Seite (Elementor Custom CSS). Reuse der Checkout-V2-Tokens (Post 9331). */

.woocommerce-cart-form,
.cart_totals {
  --mdma-ice: #72C7C8;
  --mdma-neon: #a7ff00;
  --mdma-purple: #6A44D4;
  --mdma-bg-panel: #141228;
  --mdma-border: rgba(114,199,200,0.22);
}

/* ===== A) Produkt-Tabelle als dunkles Panel ===== */
table.shop_table.woocommerce-cart-form__contents {
  background: #000000 !important;
  border: 1px solid rgba(114,199,200,0.22) !important;
  border-radius: 12px !important;
  border-collapse: separate !important;
  overflow: hidden;
  color: #F0EFFF !important;
  width: 100% !important;
}

table.shop_table.woocommerce-cart-form__contents thead th {
  background: rgba(114,199,200,0.06) !important;
  color: #9897BE !important;
  font-weight: 600;
  border-bottom: 1px solid rgba(114,199,200,0.18) !important;
  padding: 14px 12px !important;
}

table.shop_table.woocommerce-cart-form__contents td {
  border-bottom: 1px solid rgba(114,199,200,0.12) !important;
  padding: 16px 12px !important;
  color: #F0EFFF !important;
  vertical-align: middle !important;
}

table.shop_table.woocommerce-cart-form__contents tr:last-child td {
  border-bottom: none !important;
}

/* Produktbild kompakt und hochwertig gerahmt */
td.product-thumbnail img,
td.product-thumbnail a img {
  width: 84px !important;
  height: 84px !important;
  max-width: 84px !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  border: 1px solid rgba(114,199,200,0.25) !important;
  background: #05070a;
}

td.product-name a {
  color: #F0EFFF !important;
  font-weight: 600;
  text-decoration: none;
}

td.product-name a:hover {
  color: var(--mdma-ice) !important;
}

td.product-name .variation,
td.product-name dl.variation {
  color: #9897BE !important;
  font-size: 13px;
  margin-top: 4px;
}

td.product-price .amount,
td.product-subtotal .amount {
  color: #F0EFFF !important;
  font-weight: 600;
}

/* Mengensteuerung kompakt */
td.product-quantity .quantity {
  display: inline-flex;
}

td.product-quantity input.qty {
  width: 56px !important;
  height: 40px !important;
  text-align: center !important;
  background: var(--mdma-bg-panel) !important;
  border: 1px solid rgba(114,199,200,0.3) !important;
  border-radius: 8px !important;
  color: #F0EFFF !important;
  font-weight: 600;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

td.product-quantity input.qty:focus {
  border-color: var(--mdma-ice) !important;
  box-shadow: 0 0 0 2px rgba(114,199,200,0.25), 0 0 10px rgba(114,199,200,0.2) !important;
  outline: none;
}

/* Entfernen-Icon */
td.product-remove a.remove {
  color: #ff6b81 !important;
  background: transparent !important;
  font-size: 20px !important;
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 50% !important;
  transition: background 180ms ease, color 180ms ease;
}

td.product-remove a.remove:hover {
  background: rgba(255,107,129,0.15) !important;
  color: #ff8fa0 !important;
}

/* ===== B) Coupon + Warenkorb aktualisieren ===== */
.woocommerce-cart-form .coupon {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 20px;
  flex-wrap: wrap;
}

.woocommerce-cart-form #coupon_code {
  background: var(--mdma-bg-panel) !important;
  border: 1px solid rgba(114,199,200,0.3) !important;
  border-radius: 8px !important;
  color: #F0EFFF !important;
  height: 44px !important;
  padding: 0 14px !important;
  min-width: 180px;
}

.woocommerce-cart-form #coupon_code:focus {
  border-color: var(--mdma-ice) !important;
  box-shadow: 0 0 0 2px rgba(114,199,200,0.25) !important;
  outline: none;
}

.woocommerce-cart-form #coupon_code::placeholder {
  color: #9897BE !important;
}

.woocommerce-cart-form button[name="apply_coupon"],
.woocommerce-cart-form button[name="update_cart"] {
  background: transparent !important;
  color: var(--mdma-ice) !important;
  border: 1px solid rgba(114,199,200,0.4) !important;
  border-radius: 8px !important;
  height: 44px !important;
  padding: 0 20px !important;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: background 180ms ease, color 180ms ease, border-color 180ms ease;
}

.woocommerce-cart-form button[name="apply_coupon"]:hover,
.woocommerce-cart-form button[name="update_cart"]:hover {
  background: rgba(114,199,200,0.12) !important;
  border-color: var(--mdma-ice) !important;
}

.woocommerce-cart-form button[name="update_cart"] {
  float: none !important;
  margin-top: 20px;
}

/* ===== C) Bestelluebersicht / cart_totals ===== */
.cart_totals {
  background: #000000 !important;
  border: 1px solid rgba(114,199,200,0.22) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  color: #F0EFFF !important;
}

.cart_totals h2 {
  color: var(--mdma-ice) !important;
  font-size: 18px;
  margin-bottom: 12px;
}

.cart_totals table.shop_table {
  border: none !important;
  background: transparent !important;
  width: 100%;
}

.cart_totals table.shop_table th,
.cart_totals table.shop_table td {
  border-bottom: 1px solid rgba(114,199,200,0.12) !important;
  color: #F0EFFF !important;
  padding: 12px 4px !important;
}

.cart_totals .order-total .amount {
  color: var(--mdma-ice) !important;
  font-weight: 700;
  font-size: 18px;
}

.cart_totals .woocommerce-Price-amount {
  color: inherit;
}

.cart_totals small.woocommerce-price-suffix,
.cart_totals .includes_tax,
.cart_totals p {
  color: #9897BE !important;
}

/* Purple-Akzent: ergaenzende Hinweise (z.B. Ratenzahlung, Zusatzinfo) */
.cart_totals .woocommerce-info,
.woocommerce-cart-form .woocommerce-info {
  border-color: rgba(106,68,212,0.4) !important;
  color: #cdbdfa !important;
  background: rgba(106,68,212,0.08) !important;
}

/* ===== D) Checkout-Button = identisches System wie #place_order (Checkout V2) ===== */
.wc-proceed-to-checkout .checkout-button,
a.checkout-button.button {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  padding: 14px 28px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border: 1px solid rgba(114,199,200,0.4) !important;
  background: #72C7C8 !important;
  color: #050709 !important;
  box-shadow: 0 0 18px rgba(114,199,200,0.35) !important;
  margin-top: 18px !important;
  transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 120ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .wc-proceed-to-checkout .checkout-button:hover,
  a.checkout-button.button:hover {
    background: #a7ff00 !important;
    color: #050709 !important;
    box-shadow: 0 0 22px rgba(167,255,0,0.45) !important;
  }
}

.wc-proceed-to-checkout .checkout-button:focus-visible,
a.checkout-button.button:focus-visible {
  outline: 2px solid #F0EFFF;
  outline-offset: 2px;
}

.wc-proceed-to-checkout .checkout-button:active,
a.checkout-button.button:active {
  transform: scale(0.98);
}

/* ===== E) Leerer Warenkorb + WooCommerce-Meldungen ===== */
.cart-empty.woocommerce-info {
  background: #0d0c1a !important;
  border: 1px solid rgba(114,199,200,0.25) !important;
  border-radius: 12px !important;
  color: #F0EFFF !important;
  padding: 20px !important;
}

.woocommerce-cart .return-to-shop .button {
  background: #72C7C8 !important;
  color: #050709 !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  padding: 12px 24px !important;
  border: 1px solid rgba(114,199,200,0.4) !important;
}

.woocommerce-error {
  background: rgba(255,107,129,0.08) !important;
  border: 1px solid #ff6b81 !important;
  color: #F0EFFF !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
}

.woocommerce-message {
  background: rgba(55,224,166,0.08) !important;
  border: 1px solid #37e0a6 !important;
  color: #F0EFFF !important;
  border-radius: 10px !important;
  padding: 14px 16px !important;
}

/* ===== F) Responsive ===== */
@media (max-width: 1024px) {
  table.shop_table.woocommerce-cart-form__contents,
  table.shop_table.woocommerce-cart-form__contents tbody,
  table.shop_table.woocommerce-cart-form__contents tr,
  table.shop_table.woocommerce-cart-form__contents td {
    display: block;
    width: 100% !important;
  }
  table.shop_table.woocommerce-cart-form__contents tr {
    padding: 14px 12px;
  }
  td.product-thumbnail img {
    width: 64px !important;
    height: 64px !important;
  }
  .woocommerce-cart-form .coupon {
    flex-direction: column;
    align-items: stretch;
  }
  .woocommerce-cart-form #coupon_code {
    min-width: 0;
  }
}

/* ===== G) Cart-Grid-Layout + "Dazu passt" (native Elementor Cart-Widget + ShopEngine Cross-Sell) ===== */

/* G1: Zwei-Spalten-Verhaeltnis Warenkorb / Warenkorb-Summe (~70/30), Kanten buendig */
.e-cart__container {
  grid-template-columns: 7fr 3fr !important;
  gap: 32px !important;
  align-items: start !important;
}

.e-cart__column-start,
.e-cart__column-end {
  min-width: 0;
}

/* G2: "Dazu passt" -- gleiche Spaltenbreite wie Warenkorb, damit beide Bloecke fluchten */
.mdma-dazu-passt-row {
  grid-template-columns: 7fr 3fr !important;
  gap: 32px !important;
  margin-top: 32px !important;
}

.mdma-dazu-passt-left {
  gap: 20px !important;
}

.mdma-dazu-passt-title .elementor-heading-title {
  color: var(--mdma-ice, #72C7C8);
  font-size: 18px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0;
}

/* Eigene Ueberschrift des Cross-Sell-Widgets ausblenden (Duplikat zu "DAZU PASST") */
.mdma-dazu-passt-left .cross-sells > h2 {
  display: none !important;
}

/* Produktgrid: bis zu 4 Karten */
.mdma-dazu-passt-left ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 16px !important;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}

.mdma-dazu-passt-left ul.products li.product {
  background: #0d0c1a !important;
  border: 1px solid rgba(114,199,200,0.22) !important;
  border-radius: 12px !important;
  padding: 14px !important;
  position: relative;
  overflow: hidden;
  transition: border-color 180ms ease;
}

.mdma-dazu-passt-left ul.products li.product:hover {
  border-color: var(--mdma-purple, #6A44D4) !important;
}

.mdma-dazu-passt-left ul.products a.woocommerce-loop-product__link {
  display: block;
  text-decoration: none;
}

.mdma-dazu-passt-left ul.products img {
  width: 100% !important;
  height: 140px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  background: #05070a;
}

.mdma-dazu-passt-left ul.products .woocommerce-loop-product__title {
  color: #F0EFFF !important;
  font-size: 14px !important;
  font-weight: 600;
  margin: 10px 0 4px !important;
}

.mdma-dazu-passt-left ul.products .price {
  color: var(--mdma-ice, #72C7C8) !important;
  font-size: 13px !important;
  font-weight: 600;
}

.mdma-dazu-passt-left ul.products .price del {
  color: #9897BE !important;
  opacity: 0.7;
}

/* Zusatz-Icons (Wunschliste/Vergleich) ausblenden -- kein zweiter dominanter CTA */
.mdma-dazu-passt-left ul.products .shopengine-wishlist,
.mdma-dazu-passt-left ul.products .shopengine-comparison {
  display: none !important;
}

/* Quick-View als kleiner sekundaerer "ANSEHEN"-Button */
.mdma-dazu-passt-left ul.products .shopengine-quickview-trigger {
  position: static !important;
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding: 6px 12px !important;
  border: 1px solid rgba(114,199,200,0.3) !important;
  border-radius: 8px !important;
  color: var(--mdma-ice, #72C7C8) !important;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  background: transparent !important;
  transition: background 180ms ease, border-color 180ms ease;
}

.mdma-dazu-passt-left ul.products .shopengine-quickview-trigger::after {
  content: "Ansehen";
}

.mdma-dazu-passt-left ul.products .shopengine-quickview-trigger:hover {
  background: rgba(114,199,200,0.12) !important;
  border-color: var(--mdma-ice, #72C7C8) !important;
}

/* Germanized-Zusatzinfos dezent */
.mdma-dazu-passt-left ul.products .wc-gzd-additional-info {
  color: #9897BE !important;
  font-size: 10px !important;
  margin: 2px 0 !important;
}

/* ===== G3: Responsive ===== */
@media (max-width: 1024px) {
  /* Tablet: klassische 4-Spalten-Tabelle passt nicht mehr neben die Summe-Spalte -- daher wie Mobile auf 1 Spalte klappen (Tabelle ist ab hier bereits block-gestapelt, siehe Abschnitt F) */
  .e-cart__container {
    grid-template-columns: 1fr !important;
  }
  .e-cart__column-inner.e-sticky-right-column {
    position: static !important;
    top: auto !important;
  }
  .mdma-dazu-passt-row {
    grid-template-columns: 1fr !important;
    margin-top: 24px !important;
  }
  .mdma-dazu-passt-left ul.products {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .e-cart__container {
    grid-template-columns: 1fr !important;
  }
  .e-cart__column-inner.e-sticky-right-column {
    position: static !important;
    top: auto !important;
  }
  .mdma-dazu-passt-row {
    grid-template-columns: 1fr !important;
    margin-top: 24px !important;
  }
  .mdma-dazu-passt-left ul.products {
    grid-template-columns: 1fr !important;
  }
}


/* ===== H) Dark-Panel-Korrektur (weisse Boxen) + Layout-Neuordnung nach Kundenvorgabe ===== */

/* H1: Die Widget-eigenen Section-Wrapper (.e-cart-section) sind die tatsaechlichen weissen Boxen -- auf dunkle Panel-Optik umstellen, konsistent mit Checkout V2 */
.e-cart-section {
  background: #0d0c1a !important;
  border: 1px solid rgba(114,199,200,0.22) !important;
  border-radius: 12px !important;
  padding: 24px !important;
  box-shadow: 0 0 24px rgba(114,199,200,0.08) !important;
}

/* Innere Tabelle/Totals sitzen jetzt bereits in einem dunklen Panel -- keine doppelte Box mehr */
table.shop_table.woocommerce-cart-form__contents {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
}

.cart_totals {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

/* H2: Coupon aus der linken Spalte loesen -- eigene volle Reihe unter Warenkorb + Summe */
.e-cart__column-start,
.e-cart__column-start form.woocommerce-cart-form {
  display: contents;
}

.e-cart__container {
  grid-template-columns: 7fr 3fr !important;
  grid-template-rows: auto auto !important;
  gap: 32px !important;
  align-items: start !important;
}

.e-shop-table {
  grid-column: 1 / 2;
  grid-row: 1;
}

.e-cart__container > .e-clear {
  display: none !important;
}

.e-cart__column-end {
  grid-column: 2 / 3;
  grid-row: 1;
}

.coupon.e-cart-section {
  grid-column: 1 / -1;
  grid-row: 2;
}

/* H3: "Dazu passt" -- voller Bereich statt schmaler linker Spalte, gleiche Panel-Sprache */
.mdma-dazu-passt-row {
  grid-template-columns: 1fr !important;
}

.mdma-dazu-passt-left {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.mdma-dazu-passt-left ul.products {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
}

/* H4: Werbe-/Promo-Slider -- volle Breite, gleiche Panel-Sprache (Media Carousel, reale Hero-Bilder) */
.mdma-promo-slider-row {
  margin-top: 32px;
}

.mdma-promo-slider-row .elementor-widget-media-carousel {
  background: #000000;
  border: 1px solid rgba(114,199,200,0.22);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 0 24px rgba(114,199,200,0.08);
}

.mdma-promo-slider-row .elementor-carousel-image {
  border-radius: 0;
}

/* ===== H5: Responsive ===== */
@media (max-width: 1024px) {
  .e-cart__container {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }
  .e-shop-table {
    grid-column: 1;
    grid-row: 1;
  }
  .e-cart__column-end {
    grid-column: 1;
    grid-row: 2;
  }
  .coupon.e-cart-section {
    grid-column: 1;
    grid-row: 3;
  }
}

@media (max-width: 767px) {
  .e-cart-section,
  .mdma-dazu-passt-left {
    padding: 16px !important;
  }
}


/* ===== I) "Dazu passt" auf echte volle Breite -- Grid-Item stretcht nicht automatisch ===== */
.mdma-dazu-passt-row {
  justify-items: stretch !important;
}

.mdma-dazu-passt-left {
  width: 100% !important;
  max-width: 100% !important;
}


/* ===== J) Korrektur: Die eigentliche Grid-Definition sitzt auf .e-con-inner, nicht auf dem aussen liegenden Container mit der Klasse ===== */
.mdma-dazu-passt-row > .e-con-inner {
  grid-template-columns: 1fr !important;
  justify-items: stretch !important;
}


/* ===== K) Feinkorrekturen nach visueller Freigabe-Runde 2 ===== */

/* K1: Warenkorb-Box und Cart Totals unten buendig (gleich hohe Spalten, keine feste Hoehe) */
.e-cart__container {
  align-items: stretch !important;
}

/* K2: Abstand zwischen Klarna/BNPL-Hinweis und "Proceed to Checkout" */
.wc-proceed-to-checkout #payment-method-message {
  margin-bottom: 16px !important;
}

/* K3: Promo-Slider-Bild randlos bis zur Outline (Pagination laeuft jetzt nativ "Inside", kein reservierter Leerraum mehr) */
.mdma-promo-slider-row .elementor-main-swiper {
  padding: 0 !important;
}

.mdma-promo-slider-row .swiper-pagination.swiper-pagination-inside {
  bottom: 12px !important;
}

/* ===== K4: Animierte Glow-Outline -- V2 Design System (ausgerichtet auf Produktseite 9089) ===== */
@property --mdma9399-angle { syntax: '<angle>'; initial-value: 0deg; inherits: true; }
@keyframes mdma9399-border-spin { to { --mdma9399-angle: 360deg; } }

.e-cart-section,
.mdma-promo-slider-row .elementor-widget-media-carousel {
  position: relative;
  overflow: hidden;
  border: none !important;
  isolation: isolate;
}

.e-cart-section::before,
.mdma-promo-slider-row .elementor-widget-media-carousel::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1.5px;
  z-index: 0;
  background: conic-gradient(from var(--mdma9399-angle, 0deg), #72C7C8, #6A44D4, #72C7C8, #6A44D4, #72C7C8);
  opacity: 0.85;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: mdma9399-border-spin 8s linear infinite;
  pointer-events: none;
}

.e-cart-section > *,
.mdma-promo-slider-row .elementor-widget-media-carousel > * {
  position: relative;
  z-index: 1;
}


/* ===== L) Korrekturrunde: Kontrast, Button-Hover, "Dazu passt"-Komponente (Produktseite 9089 = verbindliche Referenz) ===== */

/* L1: Elementor-Pro-Cart-Widget nutzt eigene CSS-Variablen mit schwarzen Fallbacks
   (--order-summary-title-color, --order-summary-remove-icon-normal-color, --totals-color,
   --product-link-normal-color, --sections-title-color, --order-summary-color, --order-summary-variations-color).
   Root-Cause der schwarzen mobilen Labels/Icons. Offizieller Theming-Weg des Widgets -- keine Spezifitaets-Duelle. */
.elementor-widget-woocommerce-cart {
  --sections-background-color: transparent;
  --sections-border-color: transparent;
  --sections-descriptions-color: #9897BE;
  --forms-fields-normal-color: #F0EFFF;
  --forms-fields-focus-color: #F0EFFF;
  --forms-buttons-border-color: rgba(114,199,200,0.4);
  --forms-buttons-normal-text-color: #72C7C8;
  --forms-buttons-hover-border-color: var(--e-global-color-accent, #A7FF00);
  --forms-buttons-hover-text-color: #050508;
  --forms-buttons-hover-background-color: var(--e-global-color-accent, #A7FF00);
  --sections-radio-buttons-color: #72C7C8;
  --totals-color: #F0EFFF;
  --totals-divider-color: rgba(114,199,200,0.12);
  --product-link-normal-color: #F0EFFF;
  --product-link-hover-color: #72C7C8;
  --order-summary-quantity-border-color: rgba(114,199,200,0.3);
  --order-summary-color: #F0EFFF;
  --checkout-button-normal-text-color: #050709;
  --checkout-button-hover-text-color: #050709;
  --order-summary-remove-icon-normal-color: #ff6b81;
  --order-summary-remove-icon-hover-color: #ff8fa0;
  --order-summary-items-divider-color: rgba(114,199,200,0.12);
  --links-normal-color: #72C7C8;
  --links-hover-color: var(--e-global-color-accent, #A7FF00);
  --sections-title-color: #72C7C8;
  --order-summary-title-color: #9897BE;
  --order-summary-variations-color: #9897BE;
}

/* L2: Direkte Absicherung (falls einzelne Elemente die CSS-Variable nicht lesen) */
table.shop_table.woocommerce-cart-form__contents td::before,
.cart_totals table.shop_table th::before,
.cart_totals table.shop_table td::before {
  color: #9897BE !important;
}

td.product-remove a.remove {
  color: #ff6b81 !important;
}

td.product-name a {
  color: #F0EFFF !important;
}

/* ===== L3: Button-Hover "Apply coupon" / "Update Cart" -- einheitliches MDMAWEAR-System ===== */
@media (hover: hover) and (pointer: fine) {
  .woocommerce-cart-form button[name="apply_coupon"]:hover,
  .woocommerce-cart-form button[name="update_cart"]:hover {
    background: var(--e-global-color-accent, #A7FF00) !important;
    border-color: var(--e-global-color-accent, #A7FF00) !important;
    color: #050508 !important;
    box-shadow: 0 0 14px rgba(167,255,0,0.35) !important;
  }
}

.woocommerce-cart-form button[name="apply_coupon"]:focus-visible,
.woocommerce-cart-form button[name="update_cart"]:focus-visible {
  outline: 2px solid var(--e-global-color-accent, #A7FF00) !important;
  outline-offset: 2px !important;
}

.woocommerce-cart-form button[name="apply_coupon"]:active,
.woocommerce-cart-form button[name="update_cart"]:active {
  transform: scale(0.97);
}

/* ===== L4: "Dazu passt" -- identische Komponente wie Produktseite (.v2-dazu-*, Klassen 1:1 aus mdmawear-v2-preview.css uebernommen) ===== */

@keyframes mdma9399-card-pulse {
  0%   { box-shadow: 0 0 5px 1px rgba(114,199,200,.22), 0 0 10px 1px rgba(106,68,212,.15); opacity: 0.4; }
  25%  { box-shadow: 0 0 11px 2px rgba(167,139,250,.42), 0 0 18px 3px rgba(114,199,200,.22); opacity: 0.72; }
  55%  { box-shadow: 0 0 6px 1px rgba(114,199,200,.28),  0 0 11px 1px rgba(106,68,212,.18); opacity: 0.48; }
  80%  { box-shadow: 0 0 13px 3px rgba(114,199,200,.48), 0 0 24px 4px rgba(167,139,250,.28); opacity: 0.82; }
  100% { box-shadow: 0 0 8px 2px rgba(106,68,212,.38),   0 0 16px 2px rgba(114,199,200,.32); opacity: 0.65; }
}

/* Section-Head zentriert, wie Produktseite */
.mdma-dazu-passt-title {
  text-align: center !important;
}
.mdma-dazu-passt-title .elementor-heading-title {
  font-size: clamp(16px, 2vw, 22px) !important;
  letter-spacing: 0.12em !important;
  margin-bottom: 6px !important;
}
.mdma-dazu-passt-sub {
  text-align: center !important;
  margin-bottom: 28px !important;
}
.mdma-dazu-passt-sub .elementor-heading-title {
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #5A5980 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  line-height: 1.55 !important;
}

/* Grid: 4 Spalten Desktop, wie Produktseite */
.mdma-dazu-passt-left ul.products {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 30px !important;
  padding: 24px !important;
}

/* Karte: dunklere Flaeche, kein statisches Padding mehr (Bild/Info tragen eigenes Padding) */
.mdma-dazu-passt-left ul.products li.product {
  background: #0d0c1a !important;
  border-radius: 12px !important;
  padding: 0 !important;
  overflow: visible !important;
  isolation: isolate !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform 140ms ease;
}

/* Animierter Ring (::before) -- identischer Gradient/Timing wie Produktseite, gleicher Winkel-Timer wie Panel-Outline */
.mdma-dazu-passt-left ul.products li.product::before {
  content: '';
  position: absolute;
  inset: 0;
  padding: 1.5px;
  border-radius: 12px;
  pointer-events: none;
  z-index: 2;
  background: conic-gradient(
    from var(--mdma9399-angle, 0deg),
    #72C7C8 0%, #6A44D4 22%, #A78BFA 36%, #72C7C8 50%,
    #050508 55%, #6A44D4 65%, #72C7C8 80%, #050508 84%, #72C7C8 100%
  );
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: mdma9399-border-spin 4s linear infinite;
  opacity: 0.7;
  transition: opacity 200ms;
}

/* Aeussere Aura (::after) -- pulsierender Glow hinter der Karte */
.mdma-dazu-passt-left ul.products li.product::after {
  display: block !important;
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 15px;
  pointer-events: none;
  z-index: -1;
  box-shadow: 0 0 8px 1px rgba(114,199,200,.35), 0 0 16px 2px rgba(106,68,212,.22);
  opacity: 0.6;
  animation: mdma9399-card-pulse 3.2s ease-in-out infinite alternate;
  transition: opacity 200ms;
}

.mdma-dazu-passt-left ul.products li.product:nth-child(1)::before { animation-delay: 0ms; }
.mdma-dazu-passt-left ul.products li.product:nth-child(1)::after  { animation-delay: 0ms; }
.mdma-dazu-passt-left ul.products li.product:nth-child(2)::before { animation-delay: -700ms; }
.mdma-dazu-passt-left ul.products li.product:nth-child(2)::after  { animation-delay: -500ms; }
.mdma-dazu-passt-left ul.products li.product:nth-child(3)::before { animation-delay: -1400ms; }
.mdma-dazu-passt-left ul.products li.product:nth-child(3)::after  { animation-delay: -1100ms; }
.mdma-dazu-passt-left ul.products li.product:nth-child(4)::before { animation-delay: -2200ms; }
.mdma-dazu-passt-left ul.products li.product:nth-child(4)::after  { animation-delay: -1800ms; }

@media (hover: hover) and (pointer: fine) {
  .mdma-dazu-passt-left ul.products li.product:hover::before { opacity: 1; animation-duration: 2.5s; }
  .mdma-dazu-passt-left ul.products li.product:hover::after {
    opacity: 1;
    box-shadow: 0 0 14px 3px rgba(114,199,200,.55), 0 0 28px 5px rgba(106,68,212,.35), 0 0 4px 1px rgba(167,255,0,.15);
  }
}

/* Bildflaeche: quadratisch, contain, nur obere Ecken gerundet -- wie Produktseite */
.mdma-dazu-passt-left ul.products a.woocommerce-loop-product__link {
  order: 1;
  display: flex;
  flex-direction: column;
  text-decoration: none;
}
/* Bild-Container ist NICHT der Link selbst -- Theme wrapt Bild+Titel+Preis gemeinsam im <a>.
   Nur der Bild-Wrapper (.flip-bottom) bekommt die quadratische Flaeche, damit Titel/Preis darunter sichtbar bleiben. */
.mdma-dazu-passt-left ul.products a.woocommerce-loop-product__link > .flip-bottom {
  display: block;
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  padding: 9px;
  border-radius: 12px 12px 0 0;
}
.mdma-dazu-passt-left ul.products a.woocommerce-loop-product__link img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  transition: transform 200ms ease;
}
@media (hover: hover) and (pointer: fine) {
  .mdma-dazu-passt-left ul.products li.product:hover a.woocommerce-loop-product__link img {
    transform: scale(1.03);
  }
}

/* Info-Block: Name, Preis, CTA -- eigene Reihenfolge + Abstaende via order/margin (kein Wrapper-Div moeglich) */
.mdma-dazu-passt-left ul.products .woocommerce-loop-product__title {
  order: 2;
  padding: 14px 14px 0 !important;
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #F0EFFF !important;
  line-height: 1.3 !important;
}
.mdma-dazu-passt-left ul.products .price {
  order: 3;
  padding: 0 14px !important;
  margin: 2px 0 0 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #72C7C8 !important;
}
.mdma-dazu-passt-left ul.products .wc-gzd-additional-info {
  order: 4;
  padding: 0 14px !important;
}
.mdma-dazu-passt-left ul.products .shopengine-quickview-trigger {
  order: 5;
  margin: 8px 14px 16px 14px !important;
  margin-top: auto !important;
  padding: 7px 14px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
}
@media (hover: hover) and (pointer: fine) {
  .mdma-dazu-passt-left ul.products .shopengine-quickview-trigger:hover {
    background: var(--e-global-color-accent, #A7FF00) !important;
    border-color: var(--e-global-color-accent, #A7FF00) !important;
    color: #050508 !important;
  }
}

/* Responsive: 2 Spalten bleiben bis Mobile erhalten, wie Produktseite (kein Vollstapel) */
@media (max-width: 1024px) {
  .mdma-dazu-passt-left ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }
}
@media (max-width: 480px) {
  .mdma-dazu-passt-left ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    padding: 16px !important;
  }
}


/* ===== M) "Dazu passt" -- aeusseren Box-Container entfernt (Produktseite hat hier KEINE umschliessende Box,
   nur eine duenne Trennlinie oben + Abstaende). Karte/Heading/Subline bleiben unveraendert. ===== */
.mdma-dazu-passt-row {
  margin-top: 56px !important;
  margin-bottom: 56px !important;
}

.mdma-dazu-passt-row > .e-con-inner {
  padding-top: 40px !important;
  border-top: 0.5px solid #2A2850 !important;
}

@media (max-width: 767px) {
  .mdma-dazu-passt-row {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
  }
  .mdma-dazu-passt-row > .e-con-inner {
    padding-top: 28px !important;
  }
}


/* ===== N) Content-Rail -- korrigiert auf echten Produktseiten-Wert (9089) =====
   Live-Messung auf der fertigen Produktseite: oberster Elementor-Boxed-Container = 1140px
   (das ist bereits der native Theme-/Elementor-Default min(100%,1140px) -- keine eigene
   Rail-Formel noetig). Der vorherige 1520px-Rail war zu breit und wird hier zurueckgesetzt. */
.elementor-9399 > .e-con.e-con-boxed > .e-con-inner {
  max-width: min(100%, 1140px) !important;
}

/* N1: "Dazu passt"-Grid exakt auf die 1100px-Innenbreite der Produktseite (deren eigene
   .mdma-v2-Komponente hat zusaetzlich 20px Innenabstand je Seite -- hier direkt nachgebildet) */
.elementor-9399 > .e-con.e-con-boxed.mdma-dazu-passt-row > .e-con-inner {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* N2: Kartentexte exakt an Produktseiten-Karte angleichen -- "inkl. MwSt.", "plus Versandkosten"
   und Lieferzeit existieren auf der Produktseiten-Karte nicht und werden entfernt. Der
   Warenkorb-Button ("Ausfuehrung waehlen") entfaellt zugunsten des einzigen "Ansehen"-Buttons,
   der bereits 1:1 im Stil der Produktseite aufgebaut ist. */
.mdma-dazu-passt-left ul.products li.product .wc-gzd-additional-info,
.mdma-dazu-passt-left ul.products li.product .add_to_cart_button {
  display: none !important;
}

/* N3: Preisfarbe -- .woocommerce-Price-amount hat eine eigene (fast schwarze) Farbe, die die
   geerbte Teal-Farbe von .price ueberschreibt (Preis war unsichtbar). Wie auf der Produktseite
   (.v2-dazu-price .woocommerce-Price-amount) explizit gesetzt. */
.mdma-dazu-passt-left ul.products li.product .price .woocommerce-Price-amount,
.mdma-dazu-passt-left ul.products li.product .price bdi {
  color: #72C7C8 !important;
}

/* ===== R) Mini-Fix: untere Kante Warenkorb-Box / Cart-Totals-Box exakt buendig =====
   .e-shop-table ist -- wegen zweifach verschachteltem display:contents (Spalten-Wrapper + Form) --
   trotz align-items:stretch auf .e-cart__container nicht auf die volle Zeilenhoehe gestreckt worden.
   Direkte height:100% auf beide sichtbaren Boxen behebt das, ohne feste Pixelwerte/Positionierung.
   Als Basisregel (kein eigener Breakpoint) gesetzt, damit sie exakt bis zu der Breite greift, bei der
   der Grid selbst (siehe max-width:1024px weiter oben) auf 1 Spalte umschaltet -- keine Luecke bei
   gebrochenen Viewport-Breiten zwischen zwei eigenen Media-Query-Grenzen. */
.e-cart__container {
  align-items: stretch !important;
}
.e-shop-table {
  height: 100% !important;
}
.e-cart__column-end {
  height: 100% !important;
}
.e-cart-totals.e-cart-section {
  height: 100% !important;
}

/* Gestapelte Ansicht (Tablet/Mobile): normale inhaltsabhaengige Hoehe, kein Erzwingen --
   derselbe Breakpoint, der weiter oben bereits grid-template-columns auf 1fr umschaltet. */
@media (max-width: 1024px) {
  .e-shop-table,
  .e-cart__column-end,
  .e-cart-totals.e-cart-section {
    height: auto !important;
  }
}

/* ===== O) "Dazu passt" -- Related-Products-Widget: eigene Ueberschrift ausblenden (Duplikat zu "DAZU PASST") ===== */
.mdma-dazu-passt-left .related.products > h2,
.mdma-dazu-passt-left section.related > h2 {
  display: none !important;
}

/* ===== P) Hover-Fix: Bild-Flip-Plugin (magni-image-flip) deaktivieren, nur Lift + Glow wie Produktseite ===== */
.mdma-dazu-passt-left ul.products .imgflipdots,
.mdma-dazu-passt-left ul.products .cycle-slideshow,
.mdma-dazu-passt-left ul.products .productimgflip,
.mdma-dazu-passt-left ul.products .magni-box {
  display: none !important;
}

.mdma-dazu-passt-left ul.products li.product {
  transition: transform 140ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .mdma-dazu-passt-left ul.products li.product:hover {
    transform: translateY(-3px);
  }
}/* End custom CSS */