
/* ================================================
   buchundmehrammarkt.de — Modern Design 2026
   Palette: Navy #1a2e52 | Rot #c8102e | Grau #f7f7f7
   Font: Poppins
   ================================================ */

@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap");

:root {
  --bm-navy: #1a2e52;
  --bm-red: #c8102e;
  --bm-red-dark: #a00d24;
  --bm-gray-bg: #f7f7f7;
  --bm-border: #e8e8e8;
  --bm-text: #222;
  --bm-text-light: #666;
  --bm-radius: 8px;
  --bm-shadow: 0 2px 12px rgba(0,0,0,0.08);
  --bm-shadow-hover: 0 6px 24px rgba(0,0,0,0.14);
}

*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: Poppins, Arial, sans-serif !important;
  background: var(--bm-gray-bg) !important;
  color: var(--bm-text) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

a { color: var(--bm-text) !important; }
a:hover { color: var(--bm-red) !important; }

/* ── ASTRA HEADER AUSBLENDEN ── */
.ast-primary-header-bar, .main-header-bar, #masthead { display: none !important; }

/* ────────────────────────────────────────────
   TOPBAR
──────────────────────────────────────────── */
.bm-hdr-topbar {
  background: #fff !important;
  border-bottom: 1px solid var(--bm-border) !important;
  font-size: 12px !important;
  font-family: Poppins, Arial, sans-serif !important;
}
.bm-hdr-topbar .bm-hdr-container {
  max-width: 1240px !important; margin: 0 auto !important;
  padding: 0 24px !important; height: 38px !important;
  display: flex !important; align-items: center !important;
  justify-content: space-between !important;
}
.bm-hdr-topbar-left { color: #888 !important; }
.bm-hdr-topbar-left a { color: var(--bm-red) !important; text-decoration: none !important; font-weight: 500 !important; }
.bm-hdr-topbar-right { display: flex !important; gap: 20px !important; align-items: center !important; }
.bm-hdr-topbar-right a {
  color: #555 !important; text-decoration: none !important;
  font-size: 12px !important; font-weight: 500 !important;
  display: flex !important; align-items: center !important; gap: 5px !important;
  transition: color 0.15s !important;
}
.bm-hdr-topbar-right a:hover { color: var(--bm-red) !important; }

/* ────────────────────────────────────────────
   HAUPTZEILE (Logo + Nav + Portofrei)
──────────────────────────────────────────── */
.bm-hdr-main {
  background: #fff !important;
  border-bottom: 1px solid var(--bm-border) !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.05) !important;
}
.bm-hdr-main .bm-hdr-container {
  max-width: 1240px !important; margin: 0 auto !important;
  padding: 0 24px !important; height: 72px !important;
  display: flex !important; align-items: center !important;
  gap: 24px !important;
}

/* Logo */
.bm-hdr-logo { flex: 0 0 auto !important; }
.bm-logo-link { display: flex !important; align-items: center !important; gap: 10px !important; text-decoration: none !important; }
.bm-logo-icon { font-size: 2rem !important; line-height: 1 !important; }
.bm-logo-text {
  font-size: 1.3rem !important; font-weight: 800 !important;
  color: var(--bm-navy) !important; line-height: 1.1 !important; letter-spacing: -0.5px !important;
}
.bm-logo-text span.bm-logo-sub {
  font-size: 0.58rem !important; font-weight: 400 !important; color: #999 !important;
  letter-spacing: 1.5px !important; text-transform: uppercase !important; display: block !important;
}

/* Navigation */
.bm-hdr-nav { display: flex !important; align-items: stretch !important; flex: 1 !important; justify-content: center !important; position: relative !important; }
.bm-nav-item { position: static !important; display: flex !important; align-items: center !important; }
.bm-nav-link {
  color: #333 !important; text-decoration: none !important;
  font-size: 13px !important; font-weight: 600 !important;
  padding: 0 16px !important; white-space: nowrap !important;
  height: 72px !important; display: flex !important; align-items: center !important;
  border-bottom: 3px solid transparent !important;
  transition: color 0.15s, border-color 0.15s !important;
  letter-spacing: 0.3px !important;
}
.bm-nav-link:hover, .bm-nav-active {
  color: var(--bm-red) !important;
  border-bottom-color: var(--bm-red) !important;
}

/* Portofrei */
.bm-hdr-portofrei {
  flex: 0 0 auto !important; display: flex !important;
  align-items: center !important; gap: 10px !important; white-space: nowrap !important;
}
.bm-hdr-portofrei strong {
  display: block !important; font-size: 13px !important;
  font-weight: 800 !important; color: var(--bm-red) !important; line-height: 1.2 !important;
}
.bm-hdr-portofrei span { font-size: 11px !important; color: #888 !important; }

/* Mega Dropdown */
.bm-dropdown {
  display: none; position: absolute; top: 100%; left: 0;
  min-width: 720px; background: #fff;
  border: 1px solid var(--bm-border); border-top: 3px solid var(--bm-navy);
  box-shadow: 0 8px 32px rgba(0,0,0,0.12); z-index: 9999;
  border-radius: 0 0 var(--bm-radius) var(--bm-radius);
}
.bm-has-dropdown:hover .bm-dropdown { display: block; }

/* ── Globales Mega-Panel (buch24-Style) ── */
.bm-mega-panel {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-top: 3px solid #1a2e52;
  box-shadow: 0 6px 24px rgba(0,0,0,0.12);
  z-index: 9999;
  border-radius: 0 0 4px 4px;
  overflow: hidden;
}
.bm-mega-content { display: none; }
.bm-mega-content .bm-dropdown-inner {
  display: grid;
  grid-template-columns: 220px 1fr 240px;
  min-height: 260px;
}
.bm-mega-content .bm-dd-col-feature {
  overflow: hidden;
  min-width: 0;
}
.bm-mega-content .bm-dd-feature-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #333 !important;
  line-height: 1.3 !important;
  overflow: hidden !important;
  display: block !important;
  word-break: break-word !important;
}
.bm-dropdown-inner { display: grid; grid-template-columns: 210px 1fr 200px; }
.bm-dd-col { padding: 20px 24px; border-right: 1px solid #f0f0f0; }
.bm-dd-col:last-child { border-right: none; }
.bm-dd-heading {
  display: flex; align-items: center; gap: 6px;
  font-size: 10px; font-weight: 700; color: var(--bm-navy);
  text-transform: uppercase; letter-spacing: 1px;
  margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--bm-border);
}
.bm-dd-list { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.bm-dd-list li { margin: 0 !important; }
.bm-dd-list li a {
  display: flex !important; align-items: center !important; gap: 8px !important;
  color: #444 !important; text-decoration: none !important;
  font-size: 13px !important; font-weight: 400 !important;
  padding: 5px 0 !important; transition: color 0.12s !important;
}
.bm-dd-list li a:hover { color: var(--bm-red) !important; }
.bm-dd-col-feature { background: #fafafa; overflow: hidden !important; min-width: 0 !important; }
.bm-dd-feature-book { display: block !important; text-decoration: none !important; margin-top: 8px !important; }
.bm-dd-feature-book img {
  width: 100% !important; max-width: 120px !important; height: 160px !important;
  object-fit: cover !important; border-radius: 4px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2) !important; margin-bottom: 10px !important;
  transition: transform 0.2s !important;
}
.bm-dd-feature-book:hover img { transform: scale(1.03) !important; }
.bm-dd-feature-title { font-size: 13px !important; font-weight: 600 !important; color: #333 !important; display: block !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; max-width: 100% !important; }
.bm-dd-feature-price { font-size: 14px !important; font-weight: 700 !important; color: var(--bm-red) !important; display: block !important; margin-top: 4px !important; }

/* ────────────────────────────────────────────
   SUCHBALKEN
──────────────────────────────────────────── */
.bm-hdr-search {
  background: var(--bm-navy) !important;
  padding: 0 !important;
}
.bm-hdr-search-inner {
  max-width: 1240px !important; margin: 0 auto !important;
  padding: 0 24px !important; height: 52px !important;
  display: flex !important; align-items: center !important; gap: 10px !important;
}

.bm-hdr-allcat {
  background: var(--bm-red) !important; color: #fff !important;
  display: flex !important; align-items: center !important; gap: 10px !important;
  padding: 0 18px !important; height: 38px !important;
  font-size: 12px !important; font-weight: 700 !important;
  letter-spacing: 0.5px !important; white-space: nowrap !important;
  cursor: pointer !important; border-radius: 6px !important;
  transition: background 0.15s !important; flex-shrink: 0 !important;
}
.bm-hdr-allcat:hover { background: var(--bm-red-dark) !important; }

.bm-hdr-searchbox {
  flex: 1 !important; height: 38px !important;
  background: #fff !important; border-radius: 6px !important;
  overflow: hidden !important; min-width: 0 !important;
  display: flex !important; align-items: center !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.15) !important;
}
.bm-hdr-searchbox .asl_w { width: 100% !important; margin: 0 !important; }
.bm-hdr-searchbox .asl_w .probox {
  width: 100% !important; border: none !important;
  border-radius: 6px !important; height: 38px !important; background: #fff !important;
}
.bm-hdr-searchbox .asl_w .probox .proinput { background: #fff !important; }
.bm-hdr-searchbox .asl_w .probox .proinput input {
  padding: 0 16px !important; height: 38px !important;
  font-size: 14px !important; border: none !important;
  background: #fff !important; color: #333 !important;
  -webkit-text-fill-color: #333 !important;
  font-family: Poppins, Arial, sans-serif !important;
  outline: none !important; box-shadow: none !important;
}
.bm-hdr-searchbox .asl_w .probox .proinput input::placeholder { color: #aaa !important; -webkit-text-fill-color: #aaa !important; }
.bm-hdr-searchbox .asl_w .probox .prosub {
  background: var(--bm-red) !important; color: #fff !important;
  height: 38px !important; padding: 0 16px !important;
  display: flex !important; align-items: center !important;
  cursor: pointer !important; border: none !important;
  transition: background 0.15s !important;
}
.bm-hdr-searchbox .asl_w .probox .prosub:hover { background: var(--bm-red-dark) !important; }
.bm-hdr-searchbox .asl_w .probox .prosub svg { fill: #fff !important; }

.bm-hdr-cart {
  background: rgba(255,255,255,0.12) !important; color: #fff !important;
  display: flex !important; align-items: center !important; gap: 10px !important;
  padding: 0 18px !important; height: 38px !important; text-decoration: none !important;
  border-radius: 6px !important; flex-shrink: 0 !important;
  border: 1px solid rgba(255,255,255,0.25) !important;
  transition: background 0.15s !important;
}
.bm-hdr-cart:hover { background: rgba(255,255,255,0.22) !important; color: #fff !important; }
.bm-hdr-cart strong { display: block !important; font-size: 12px !important; font-weight: 700 !important; color: #fff !important; line-height: 1.2 !important; }
.bm-hdr-cart span { font-size: 11px !important; color: rgba(255,255,255,0.7) !important; }

/* admin-bar fix */
.admin-bar #bm-header { margin-top: 0 !important; }
#bm-header { font-family: Poppins, Arial, sans-serif !important; }

/* ────────────────────────────────────────────
   GLOBAL CONTENT
──────────────────────────────────────────── */
.entry-content { max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
.ast-separate-container .ast-article-single { padding: 0 !important; background: transparent !important; box-shadow: none !important; }
.site-content .ast-container { max-width: 100% !important; padding: 0 !important; }
.entry-title, .page-header .entry-title { display: none !important; }
.woocommerce-page .entry-title, .single-product .entry-title { display: block !important; }
.woocommerce-notices-wrapper { display: none !important; }

/* ────────────────────────────────────────────
   SHOP SEITE — Produktkarten
──────────────────────────────────────────── */
.ast-woocommerce-container { background: var(--bm-gray-bg) !important; padding: 20px 24px !important; }
ul.products {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 16px !important; padding: 0 !important; margin: 0 !important; list-style: none !important;
}
ul.products li.product {
  background: #fff !important;
  border: 1px solid var(--bm-border) !important;
  border-radius: var(--bm-radius) !important;
  overflow: hidden !important;
  transition: box-shadow 0.2s, transform 0.2s !important;
  display: flex !important; flex-direction: column !important; margin: 0 !important;
}
ul.products li.product:hover {
  box-shadow: var(--bm-shadow-hover) !important;
  transform: translateY(-2px) !important;
}

ul.products li.product:hover img { transform: scale(1.03) !important; }
.woocommerce-loop-product__title {
  font-size: 0.82rem !important; font-weight: 600 !important; color: #333 !important;
  padding: 10px 12px 4px !important; margin: 0 !important; line-height: 1.4 !important;
  display: -webkit-box !important; -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important; overflow: hidden !important;
}
ul.products li.product:hover .woocommerce-loop-product__title { color: var(--bm-red) !important; }
.price, .woocommerce-Price-amount { color: var(--bm-red) !important; font-weight: 700 !important; }
ul.products li.product .price { padding: 2px 12px 8px !important; font-size: 1rem !important; display: block !important; }
.woocommerce ul.products li.product .button {
  background: var(--bm-red) !important; color: #fff !important;
  border-radius: 0 0 var(--bm-radius) var(--bm-radius) !important;
  font-size: 0.72rem !important; font-weight: 700 !important;
  padding: 10px !important; width: 100% !important; margin: auto 0 0 !important;
  text-transform: uppercase !important; letter-spacing: 0.5px !important;
  border: none !important; transition: background 0.15s !important;
  display: block !important; text-align: center !important;
}
.woocommerce ul.products li.product .button:hover { background: var(--bm-red-dark) !important; }
.woocommerce span.onsale { background: var(--bm-red) !important; border-radius: 4px !important; font-size: 0.65rem !important; font-weight: 700 !important; }

/* ────────────────────────────────────────────
   EINZELNE PRODUKTSEITE
──────────────────────────────────────────── */
.single-product .ast-woocommerce-container { padding: 0 !important; }
.single-product div.product {
  display: flex !important; flex-wrap: wrap !important; gap: 40px !important;
  padding: 32px 32px 24px !important; background: #fff !important;
  max-width: 1100px !important; margin: 24px auto 0 !important;
  border-radius: var(--bm-radius) !important; box-shadow: var(--bm-shadow) !important;
  align-items: flex-start !important;
}

/* Galerie */
.single-product .woocommerce-product-gallery {
  flex: 0 0 300px !important; max-width: 300px !important; text-align: center !important;
}
.single-product .woocommerce-product-gallery img.wp-post-image {
  display: block !important; margin: 0 auto !important;
  max-width: 280px !important; width: auto !important; height: auto !important;
  border-radius: 6px !important; box-shadow: 0 8px 28px rgba(0,0,0,0.15) !important;
}
.single-product .woocommerce-product-gallery img.zoomImg { display: none !important; }
.single-product .woocommerce-product-gallery__image { overflow: visible !important; }
.single-product .woocommerce-product-gallery__image a { pointer-events: none !important; cursor: default !important; }
.woocommerce-product-gallery__trigger { display: none !important; }

/* Summary */
.single-product div.product .summary { flex: 1 1 340px !important; min-width: 280px !important; }
.single-product .product_title {
  font-size: 1.8rem !important; font-weight: 800 !important;
  color: #111 !important; line-height: 1.2 !important; margin-bottom: 8px !important;
}
.single-product .woocommerce-breadcrumb {
  font-size: 12px !important; color: #aaa !important; margin-bottom: 12px !important;
  background: none !important; padding: 0 !important;
}
.single-product .woocommerce-breadcrumb a { color: var(--bm-red) !important; text-decoration: none !important; }
.single-product .price {
  font-size: 1.9rem !important; font-weight: 800 !important;
  color: var(--bm-red) !important; margin: 8px 0 !important; display: block !important;
}
.bm-portofrei {
  display: inline-flex !important; align-items: center !important; gap: 5px !important;
  background: #e8f5e9 !important; color: #2e7d32 !important;
  font-size: 11px !important; font-weight: 700 !important;
  padding: 3px 10px !important; border-radius: 20px !important;
  margin-bottom: 8px !important;
}
.bm-price-note { font-size: 12px !important; color: #888 !important; margin: 4px 0 12px !important; }
.single-product .woocommerce-product-details__short-description {
  font-size: 13px !important; color: #555 !important; line-height: 1.7 !important; margin-bottom: 16px !important;
}

/* Mengenfeld */
.bm-qty-wrap {
  display: inline-flex !important; align-items: center !important;
  border: 2px solid var(--bm-border) !important; border-radius: 8px !important;
  overflow: hidden !important; margin-bottom: 16px !important;
  background: #fff !important;
}
.bm-qty-btn {
  background: #f5f5f5 !important; border: none !important;
  width: 40px !important; height: 42px !important;
  font-size: 18px !important; cursor: pointer !important; color: #333 !important;
  transition: background 0.15s !important;
}
.bm-qty-btn:hover { background: #e8e8e8 !important; color: var(--bm-red) !important; }
.bm-qty-wrap input[type=number] {
  width: 52px !important; height: 42px !important; text-align: center !important;
  border: none !important; border-left: 2px solid var(--bm-border) !important;
  border-right: 2px solid var(--bm-border) !important;
  font-size: 15px !important; font-weight: 700 !important;
  color: #333 !important; -webkit-text-fill-color: #333 !important;
  background: #fff !important;
  -moz-appearance: textfield !important; appearance: textfield !important;
}
.bm-qty-wrap input[type=number]::-webkit-inner-spin-button,
.bm-qty-wrap input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none !important; }
.woocommerce div.product form.cart .quantity { display: none !important; margin: 0 !important; }

/* Lieferbar Badge */
.bm-delivery-badge {
  display: inline-flex !important; align-items: center !important; gap: 6px !important;
  color: #2e7d32 !important; font-size: 13px !important; font-weight: 600 !important;
  margin: 4px 0 16px !important;
}

/* Warenkorb Button */
.woocommerce .single_add_to_cart_button {
  background: var(--bm-red) !important; color: #fff !important;
  font-weight: 700 !important; padding: 14px 32px !important;
  border-radius: 8px !important; text-transform: uppercase !important;
  font-size: 14px !important; letter-spacing: 0.5px !important;
  border: none !important; transition: background 0.15s, transform 0.1s !important;
  width: 100% !important;
}
.woocommerce .single_add_to_cart_button:hover {
  background: var(--bm-red-dark) !important; transform: translateY(-1px) !important;
}

/* Produktmeta */
.single-product .product_meta { display: none !important; }
.single-product .single-product-category { display: none !important; }
.single-product .legal-price-info { display: none !important; }
.single-product p.wc-gzd-additional-info { display: none !important; }

/* ────────────────────────────────────────────
   REITER / TABS
──────────────────────────────────────────── */
.single-product .woocommerce-tabs {
  clear: both !important; max-width: 1100px !important;
  margin: 16px auto 0 !important; padding: 0 !important;
}
.single-product .wc-tabs-wrapper { border-top: none !important; }
.single-product .woocommerce-tabs ul.tabs {
  display: flex !important; flex-wrap: nowrap !important;
  padding: 0 24px !important; margin: 0 !important;
  list-style: none !important; border-bottom: 2px solid var(--bm-border) !important;
  gap: 4px !important; background: #fff !important;
  border-radius: var(--bm-radius) var(--bm-radius) 0 0 !important;
}
.single-product .woocommerce-tabs ul.tabs li {
  margin: 0 !important; padding: 0 !important;
  border: none !important; background: transparent !important;
  border-radius: 0 !important; float: none !important; position: static !important;
}
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.single-product .woocommerce-tabs ul.tabs li a {
  display: block !important; padding: 14px 20px !important;
  font-size: 13px !important; font-weight: 600 !important; color: #888 !important;
  text-decoration: none !important; white-space: nowrap !important;
  border-bottom: 3px solid transparent !important; transition: all 0.15s !important;
}
.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li a:hover {
  color: var(--bm-red) !important; border-bottom-color: var(--bm-red) !important;
}
.single-product .woocommerce-tabs .panel {
  background: #fff !important; border: none !important; border-top: none !important;
  padding: 24px 32px !important;
  border-radius: 0 0 var(--bm-radius) var(--bm-radius) !important;
  box-shadow: var(--bm-shadow) !important; margin: 0 !important;
}

/* Attribut-Tabelle */
.single-product .shop_attributes { width: 100% !important; border-collapse: collapse !important; }
.single-product .shop_attributes th,
.single-product .shop_attributes td {
  padding: 10px 14px !important; font-size: 13px !important;
  border-bottom: 1px solid #f0f0f0 !important; text-align: left !important;
}
.single-product .shop_attributes tr:last-child th,
.single-product .shop_attributes tr:last-child td { border-bottom: none !important; }
.single-product .shop_attributes th {
  color: #555 !important; font-weight: 600 !important;
  width: 160px !important; background: #fafafa !important;
}

/* ────────────────────────────────────────────
   ÄHNLICHE PRODUKTE
──────────────────────────────────────────── */
.single-product .related.products {
  clear: both !important; max-width: 1100px !important;
  margin: 20px auto 32px !important; padding: 24px 32px !important;
  background: #fff !important; border-radius: var(--bm-radius) !important;
  box-shadow: var(--bm-shadow) !important;
}
.single-product .related.products h2 {
  font-size: 1.1rem !important; font-weight: 700 !important; color: #111 !important;
  margin-bottom: 20px !important;
  padding-bottom: 12px !important; border-bottom: 2px solid var(--bm-border) !important;
}
.single-product .related.products ul.products {
  grid-template-columns: repeat(4, 1fr) !important; gap: 16px !important;
}
.single-product .related.products 
.single-product .related.products .ast-woo-product-category { display: none !important; }
.woocommerce .related.products ul.products li.product .button,
.woocommerce .related.products ul.products li.product a.button {
  background: var(--bm-red) !important; color: #fff !important;
}
.woocommerce .related.products ul.products li.product .button:hover,
.woocommerce .related.products ul.products li.product a.button:hover {
  background: var(--bm-red-dark) !important;
}

/* Breadcrumb in Summary */
.woocommerce-breadcrumb {
  font-size: 12px !important; color: #aaa !important; background: none !important;
  padding: 0 !important; margin-bottom: 10px !important; display: block !important;
}
.woocommerce-breadcrumb a { color: var(--bm-red) !important; text-decoration: none !important; }

/* ────────────────────────────────────────────
   FOOTER
──────────────────────────────────────────── */
.site-below-footer-wrap, .ast-footer-copyright {
  background: #111 !important; color: rgba(255,255,255,0.5) !important;
  border-top: 3px solid var(--bm-red) !important;
  padding: 16px !important; font-size: 12px !important;
}
.ast-footer-copyright a { color: rgba(255,255,255,0.4) !important; margin: 0 6px !important; }
.ast-footer-copyright a:hover { color: rgba(255,255,255,0.8) !important; }

/* ────────────────────────────────────────────
   RESPONSIVE
──────────────────────────────────────────── */
@media (max-width: 1100px) {
  ul.products { grid-template-columns: repeat(4,1fr) !important; }
  .single-product .related.products ul.products { grid-template-columns: repeat(3,1fr) !important; }
}
@media (max-width: 768px) {
  ul.products { grid-template-columns: repeat(2,1fr) !important; gap: 10px !important; }
  .bm-hdr-nav { display: none !important; }
  .bm-hdr-portofrei { display: none !important; }
  .single-product div.product { flex-direction: column !important; padding: 16px !important; }
  .single-product .woocommerce-product-gallery { flex: none !important; max-width: 100% !important; }
  .single-product .related.products ul.products { grid-template-columns: repeat(2,1fr) !important; }
  .bm-hdr-allcat { min-width: auto !important; font-size: 11px !important; }
}
@media (max-width: 480px) {
  ul.products { grid-template-columns: repeat(2,1fr) !important; }
  ul.products.columns-5,
  .bm-products-grid { grid-template-columns: repeat(2, 1fr) !important; }
}

/* ── ASL SUCHDROPDOWN ── */
#asl-results-1, .asl_w .results, [id^=asl-results] {
  background: #fff !important;
  border: 1px solid #e0e0e0 !important;
  border-top: 3px solid #1a2e52 !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.12) !important;
  border-radius: 0 0 8px 8px !important;
  overflow: hidden !important;
}
.asl_r .item, .asl_w .results .item {
  border-bottom: 1px solid #f5f5f5 !important;
  padding: 10px 14px !important;
}
.asl_r .item:hover, .asl_w .results .item:hover { background: #fafafa !important; }
.asl_r .item h3 a, .asl_w .results .item .title a {
  color: #c8102e !important; font-weight: 600 !important; font-size: 14px !important;
}
.asl_r .item .content, .asl_r .item .etc {
  color: #666 !important; font-size: 12px !important;
}
/* Eingabetext */
.bm-hdr-searchbox input, .bm-hdr-searchbox input[type=text],
.bm-hdr-searchbox input[type=search] {
  color: #333 !important; -webkit-text-fill-color: #333 !important;
  caret-color: #333 !important;
}
/* Lupen-Button flush */
.bm-hdr-searchbox .asl_w .probox {
  display: flex !important; align-items: stretch !important; height: 38px !important;
}
.bm-hdr-searchbox .asl_w .probox .prosub {
  display: flex !important; align-items: center !important; justify-content: center !important;
  height: 38px !important; min-width: 42px !important; padding: 0 12px !important;
  flex-shrink: 0 !important; line-height: 1 !important;
}

/* Eingabetext Suchfeld - höchste Priorität */
#bm-header .bm-hdr-searchbox input[type=text],
#bm-header .bm-hdr-searchbox input[type=search],
#bm-header .bm-hdr-searchbox .proinput input {
  color: #333 !important;
  -webkit-text-fill-color: #333 !important;
  caret-color: #c8102e !important;
}
#bm-header .bm-hdr-searchbox input[type=text]::placeholder,
#bm-header .bm-hdr-searchbox .proinput input::placeholder {
  color: #aaa !important;
  -webkit-text-fill-color: #aaa !important;
}
/* Lupen-Button kein extra Abstand */
#bm-header .prosub {
  padding: 0 14px !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
}
/* Dropdown Design */
#asl-results-1 .item, [id^=asl-results] .item {
  background: #fff !important;
  border-bottom: 1px solid #f0f0f0 !important;
}
#asl-results-1 .item:hover { background: #fafafa !important; }
#asl-results-1 .item h3 a { color: #c8102e !important; font-weight: 600 !important; }
#asl-results-1 .item .content { color: #666 !important; font-size: 12px !important; }
#asl-results-1 { border-top: 3px solid #1a2e52 !important; border-color: #e0e0e0 !important; }

/* ASL Suchergebnis-Dropdown – Cover nicht abschneiden */
#asl-results-1, [id^=asl-results],
.asl_w .results, .autocomplete-suggestions {
  overflow: visible !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
}
#asl-results-1 .item, [id^=asl-results] .item {
  overflow: visible !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 10px 14px !important;
  min-height: 70px !important;
}
#asl-results-1 .item .asl_image,
[id^=asl-results] .item .asl_image {
  flex-shrink: 0 !important;
  width: 52px !important;
  height: 70px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  overflow: visible !important;
  display: block !important;
  clip: auto !important;
}
#asl-results-1 .item .asl_content,
[id^=asl-results] .item .asl_content {
  flex: 1 !important;
  min-width: 0 !important;
}

/* ASL Ergebnis-Item – Bild vollständig, kein Abschneiden */
.asl_r_pagepost .asl_content {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  overflow: visible !important;
  padding: 8px 12px !important;
}
.asl_r_pagepost .asl_content .asl_image {
  flex-shrink: 0 !important;
  width: 52px !important;
  height: 70px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  overflow: visible !important;
  clip: auto !important;
  display: block !important;
  margin: 0 !important;
}
.asl_r_pagepost .asl_content > div,
.asl_r_pagepost .asl_content h3,
.asl_r_pagepost .asl_content .asl_desc {
  overflow: visible !important;
  flex: 1 !important;
}
.asl_r_pagepost .asl_content h3 { margin-top: 0 !important; font-size: 14px !important; }
span.overlap { display: none !important; }

/* ASL Dropdown – finaler Fix */
#asl-results-1 {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  overflow: visible !important;
  margin-top: 0 !important;
  z-index: 99999 !important;
  border-top: 3px solid #1a2e52 !important;
  border-radius: 0 0 8px 8px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
}
#asl-results-1 .item {
  overflow: visible !important;
  padding: 10px 14px !important;
}
#asl-results-1 .item .asl_content {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  overflow: visible !important;
}
#asl-results-1 .item .asl_content .asl_image {
  flex: 0 0 52px !important;
  width: 52px !important;
  height: 70px !important;
  min-width: 52px !important;
  object-fit: cover !important;
  overflow: visible !important;
  clip: auto !important;
  margin: 0 !important;
  border-radius: 3px !important;
  display: block !important;
}
#asl-results-1 .item .asl_content h3 {
  margin: 0 0 4px 0 !important;
  font-size: 14px !important;
}
#asl-results-1 .item .asl_content .asl_desc {
  font-size: 12px !important;
  color: #666 !important;
  margin: 0 !important;
}
.asl_w .results_container, .asl_r { overflow: visible !important; }

/* ASL: overflow:hidden überschreiben – verhindert Cover-Abschneiden */
div.asl_w { overflow: visible !important; }
div.asl_r { overflow: visible !important; }
.bm-hdr-searchbox div.asl_w { overflow: visible !important; }
.bm-hdr-searchbox div.asl_w .probox { overflow: hidden !important; }

/* ASL Item: float-Layout – Bild links, Text daneben (kein flex) */
div.asl_r .results .item .asl_content {
  display: block !important;
  overflow: visible !important;
  padding: 8px 12px !important;
  flex: none !important;
}
div.asl_r .results .item .asl_content .asl_image {
  float: left !important;
  width: 52px !important;
  height: 70px !important;
  object-fit: cover !important;
  margin: 0 12px 4px 0 !important;
  border-radius: 3px !important;
  display: block !important;
  flex: none !important;
}
div.asl_r .results .item .asl_content::after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}
div.asl_r .results .item .asl_content h3,
div.asl_r .results .item .asl_content .asl_desc,
div.asl_r .results .item .asl_content .etc {
  overflow: visible !important;
  display: block !important;
  flex: none !important;
  margin-left: 0 !important;
}

/* Zweite ASL-Instanz ausblenden (Duplikat durch double-render) */
.asl_w_container_2, #ajaxsearchlite2, #ajaxsearchliteres2 {
  display: none !important;
  visibility: hidden !important;
}

/* ASL Item: Grid-Layout – Bild links, Titel+Text rechts daneben */
div.asl_r .results .item .asl_content {
  display: grid !important;
  grid-template-columns: 52px 1fr !important;
  column-gap: 12px !important;
  align-items: start !important;
  padding: 10px 14px !important;
  float: none !important;
}
div.asl_r .results .item .asl_content .asl_image {
  grid-column: 1 !important;
  grid-row: 1 / span 3 !important;
  width: 52px !important;
  height: 70px !important;
  object-fit: cover !important;
  border-radius: 3px !important;
  float: none !important;
  margin: 0 !important;
  display: block !important;
}
div.asl_r .results .item .asl_content h3 {
  grid-column: 2 !important; grid-row: 1 !important;
  margin: 0 0 4px 0 !important; float: none !important;
}
div.asl_r .results .item .asl_content .asl_desc {
  grid-column: 2 !important; grid-row: 2 !important; float: none !important;
}
div.asl_r .results .item .asl_content .etc {
  grid-column: 2 !important; grid-row: 3 !important; float: none !important;
}
div.asl_r .results .item .asl_content::after { display: none !important; }

/* Cat-Nav unter ASL-Dropdown */
.bm-cat-nav { z-index: 100 !important; }
.asl_w_container, div.asl_r, #asl-results-1, [id^=asl-results] {
  z-index: 999999 !important;
}

/* ASL Dropdown max-height – kein Über-die-Cat-Nav-hinauswachsen */
#ajaxsearchliteres1, .wpdreams_asl_results {
  max-height: 400px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}
#ajaxsearchliteres1 .results {
  max-height: 360px !important;
  overflow-y: auto !important;
}

/* Cat-Nav: aus bm-header Stacking-Context heraus */
.bm-cat-nav {
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  isolation: auto !important;
}
#bm-header {
  isolation: auto !important;
  transform: none !important;
  will-change: auto !important;
  filter: none !important;
}

/* Header: kein Stacking Context – damit ASL Dropdown über Cat-Nav liegt */
#bm-header { position: static !important; }
#bm-header .bm-hdr-search { position: relative !important; overflow: visible !important; z-index: 9999 !important; }
.bm-hdr-search-inner { position: relative !important; z-index: 9999 !important; }

/* ============================================
   KATEGORIE-SLIDER
   ============================================ */

.bm-slider-wrapper {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
}
.bm-slider-wrapper ul.products.bm-slider-track {
  display: flex !important;
  flex-wrap: nowrap !important;
  transition: transform 0.35s ease !important;
  grid-template-columns: none !important;
  gap: 0 !important;
  width: 100% !important;
}
.bm-slider-wrapper ul.products.bm-slider-track li.product {
  flex: 0 0 calc(100% / 5) !important;
  max-width: calc(100% / 5) !important;
  padding: 0 6px !important;
  box-sizing: border-box !important;
}
.bm-slider-btn {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: rgba(26, 46, 82, 0.85) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  font-size: 24px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  z-index: 10 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
  transition: background 0.15s !important;
}
.bm-slider-btn:hover { background: #c8102e !important; }
.bm-slider-prev { left: 4px !important; }
.bm-slider-next { right: 4px !important; }
.bm-slider-btn:disabled { opacity: 0.3 !important; cursor: default !important; }

@media (max-width: 900px) {
  .bm-slider-wrapper ul.products.bm-slider-track li.product {
    flex: 0 0 calc(100% / 3) !important;
    max-width: calc(100% / 3) !important;
  }
}
@media (max-width: 600px) {
  .bm-slider-wrapper ul.products.bm-slider-track li.product {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
}

/* ============================================
   STARTSEITE – KATEGORIE-SLIDER REDESIGN
   ============================================ */

/* Slider-Sektion Header */
.bm-slider-section, .b24-section {
  background: #fff !important;
  margin-bottom: 8px !important;
  padding: 16px 20px 12px !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 6px rgba(0,0,0,0.06) !important;
}
.bm-slider-section .b24-section-head,
.b24-section .b24-section-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #e8e8e8 !important;
}
.bm-slider-section .b24-section-head h3,
.b24-section .b24-section-head h3 {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #1a2e52 !important;
  margin: 0 !important;
}
.bm-slider-section .b24-section-head a,
.b24-section .b24-section-head a {
  color: #c8102e !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* Slider: kompaktes Buchkarten-Layout */
.bm-slider-wrapper ul.products.bm-slider-track li.product {
  flex: 0 0 calc(100% / 6) !important;
  max-width: calc(100% / 6) !important;
  padding: 0 5px !important;
}
.bm-slider-wrapper ul.products.bm-slider-track li.product img {
  height: 160px !important;
  object-fit: cover !important;
}

/* Pfeil-Buttons ans Design anpassen */
.bm-slider-btn {
  background: #c8102e !important;
  border-radius: 50% !important;
  width: 34px !important;
  height: 34px !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  box-shadow: 0 2px 6px rgba(200,16,46,0.3) !important;
  opacity: 0.9 !important;
}
.bm-slider-btn:hover { 
  background: #a00d24 !important;
  opacity: 1 !important;
}
.bm-slider-btn:disabled {
  background: #ccc !important;
  box-shadow: none !important;
}
.bm-slider-prev { left: 2px !important; }
.bm-slider-next { right: 2px !important; }

/* Shop-Seite Produktgrid bleibt gleich */
.woocommerce-page ul.products:not(.bm-slider-track) {
  grid-template-columns: repeat(5, 1fr) !important;
}

/* Homepage-Slider-Container */
.bm-homepage-sliders { margin: 0 !important; padding: 0 !important; }

@media (max-width: 1000px) {
  .bm-slider-wrapper ul.products.bm-slider-track li.product {
    flex: 0 0 25% !important; max-width: 25% !important;
  }
}
@media (max-width: 700px) {
  .bm-slider-wrapper ul.products.bm-slider-track li.product {
    flex: 0 0 33.33% !important; max-width: 33.33% !important;
  }
}

/* Buchcover vollständig anzeigen (wie buch24.de) – kein Abschneiden */
ul.products li.product img,
.bm-slider-wrapper 
/* Hover-Zoom trotzdem behalten */
ul.products li.product:hover img {
  transform: scale(1.04) !important;
}

/* ============================================
   PRODUKTKARTE – buch24.de-Style
   ============================================ */

/* Karte: kein Overflow-hidden damit Cover nicht clippt */
ul.products li.product {
  border: 1px solid #e8e8e8 !important;
  border-radius: 4px !important;
  background: #fff !important;
  padding: 0 !important;
  overflow: visible !important;
  box-shadow: none !important;
  transition: box-shadow 0.2s !important;
}
ul.products li.product:hover {
  box-shadow: 0 2px 12px rgba(0,0,0,0.12) !important;
  transform: none !important;
}

/* Cover-Bereich: weiß, fixed height, contain */
ul.products li.product a.woocommerce-loop-product__link {
  display: block !important;
  background: #fff !important;
  padding: 8px !important;
  text-align: center !important;
  border-bottom: 1px solid #f0f0f0 !important;
}
ul.products li.product img,
.bm-slider-wrapper 
ul.products li.product:hover img { transform: scale(1.03) !important; }

/* Textbereich unter Bild */
ul.products li.product .woocommerce-loop-product__title {
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  color: #222 !important;
  padding: 8px 10px 2px !important;
  margin: 0 !important;
  line-height: 1.35 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.5em !important;
}
ul.products li.product:hover .woocommerce-loop-product__title { color: #c8102e !important; }

/* Kurzbeschreibung */
ul.products li.product .woocommerce-product-details__short-description,
ul.products li.product .product-excerpt {
  font-size: 0.72rem !important;
  color: #777 !important;
  padding: 0 10px 3px !important;
  margin: 0 !important;
  line-height: 1.3 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Format: Gebunden / Sofort lieferbar – per after injected */
ul.products li.product::after { display: none !important; }

/* Preis */
ul.products li.product .price {
  display: block !important;
  padding: 6px 10px 8px !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #222 !important;
  margin: 0 !important;
}
ul.products li.product .price .woocommerce-Price-amount {
  color: #222 !important;
}

/* "IN DEN WARENKORB" Button: restauriert */
.woocommerce ul.products li.product .button {
  background: #1a2e52 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 0 0 3px 3px !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  padding: 9px 8px !important;
  width: 100% !important;
  margin: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  transition: background 0.15s !important;
}
.woocommerce ul.products li.product .button:hover {
  background: #c8102e !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Fix: doppelte Linie Suchleiste */
.bm-search-hero { border-bottom: none !important; }

/* Fix: doppelte Linie Header/ASL-Dropdown */
.ast-primary-header-bar { border-bottom: none !important; }

/* Fix: nur eine Linie – border-top des ASL-Dropdowns entfernen */
#asl-results-1,
.asl_r,
[id^="asl-results"],
.autocomplete-suggestions {
  border-top: none !important;
}

/* Cover */
.bm-card-img-link {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #f7f7f7;
    border-bottom: 1px solid #efefef;
    flex-shrink: 0;
}
.bm-card-img-link img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    padding: 8px;
    box-sizing: border-box;
    display: block;
}

/* Info-Bereich */
.bm-card-body {
    padding: 8px 8px 0;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.bm-card-format-label {
    font-size: 0.68rem;
    color: #999;
    font-weight: 400;
    margin-bottom: 3px;
}
.bm-card-title {
    font-size: 0.76rem;
    font-weight: 600;
    color: #1a2e52;
    text-decoration: none;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 4px;
}
.bm-card-title:hover { color: #c8102e; }
.bm-card-price {
    font-size: 0.88rem;
    font-weight: 700;
    color: #c8102e;
    margin-top: auto;
    padding: 4px 0 8px;
}

/* Button: nur bei Hover */
.bm-card-btn {
    display: block;
    background: #1a2e52;
    color: #fff;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-align: center;
    padding: 8px;
    text-decoration: none;
    opacity: 0;
    transition: opacity 0.18s, background 0.15s;
    border-radius: 0 0 3px 3px;
    margin: 0 -8px;
}
.bm-product-card:hover .bm-card-btn { opacity: 1; }
.bm-card-btn:hover { background: #c8102e; color: #fff; }


/* =============================================
   KONTAKTSEITE
   ============================================= */
.bm-kontakt-grid {
    display: grid !important;
    grid-template-columns: 1fr 340px !important;
    gap: 24px !important;
    align-items: start !important;
}
@media (max-width: 700px) {
    .bm-kontakt-grid { grid-template-columns: 1fr !important; }
}
.page-id-437 input[type=text]:focus,
.page-id-437 input[type=email]:focus,
.page-id-437 textarea:focus,
.page-id-437 select:focus {
    border-color: #1a2e52 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(26,46,82,0.08) !important;
}

/* =============================================
   MEIN KONTO — WooCommerce Account Pages
   ============================================= */

/* Seitenüberschrift */
.woocommerce-account .entry-title,
.woocommerce-account h1.page-title {
    font-family: 'Poppins', Arial, sans-serif !important;
    background: linear-gradient(135deg, #1a2e52 0%, #2a4070 100%) !important;
    color: #fff !important;
    padding: 32px 32px 28px !important;
    border-radius: 4px !important;
    margin-bottom: 24px !important;
    font-size: 1.6rem !important;
    font-weight: 700 !important;
}

/* Haupt-Container */
.woocommerce-account .woocommerce {
    font-family: 'Poppins', Arial, sans-serif !important;
}

/* Navigation (linke Spalte) */
.woocommerce-MyAccount-navigation {
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    margin-bottom: 20px !important;
}
.woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.woocommerce-MyAccount-navigation ul li {
    border-bottom: 1px solid #f0f0f0 !important;
    margin: 0 !important;
}
.woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: none !important;
}
.woocommerce-MyAccount-navigation ul li a {
    display: block !important;
    padding: 12px 18px !important;
    color: #333 !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    transition: background 0.15s, color 0.15s, padding-left 0.15s !important;
    border-left: 3px solid transparent !important;
}
.woocommerce-MyAccount-navigation ul li a:hover {
    background: #f7f9fc !important;
    color: #c8102e !important;
    padding-left: 22px !important;
    border-left-color: #c8102e !important;
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation-link--is-active a {
    background: #f0f4f9 !important;
    color: #1a2e52 !important;
    font-weight: 700 !important;
    border-left-color: #1a2e52 !important;
    padding-left: 22px !important;
}

/* Inhaltsbereich (rechte Spalte) */
.woocommerce-MyAccount-content {
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 4px !important;
    padding: 28px 32px !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
    font-family: 'Poppins', Arial, sans-serif !important;
    color: #1a2e52 !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #e8e8e8 !important;
    margin-bottom: 16px !important;
}
.woocommerce-MyAccount-content p {
    font-size: 0.88rem !important;
    color: #555 !important;
    line-height: 1.65 !important;
}

/* Buttons im Account-Bereich */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content input[type=submit],
.woocommerce-MyAccount-content button[type=submit] {
    background: #1a2e52 !important;
    color: #fff !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.82rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 10px 20px !important;
    border-radius: 3px !important;
    border: none !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
}
.woocommerce-MyAccount-content .button:hover,
.woocommerce-MyAccount-content input[type=submit]:hover,
.woocommerce-MyAccount-content button[type=submit]:hover {
    background: #c8102e !important;
    color: #fff !important;
}

/* Hallo-Text */
.woocommerce-MyAccount-content .woocommerce-info {
    border-top-color: #1a2e52 !important;
    font-size: 0.88rem !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}

/* Formularfelder */
.woocommerce-account .woocommerce-EditAccountForm input,
.woocommerce-account .woocommerce-address-fields input,
.woocommerce-account select {
    font-family: 'Poppins', Arial, sans-serif !important;
    border: 1px solid #ddd !important;
    border-radius: 3px !important;
    padding: 9px 12px !important;
    font-size: 0.85rem !important;
}
.woocommerce-account .woocommerce-EditAccountForm input:focus,
.woocommerce-account .woocommerce-address-fields input:focus {
    border-color: #1a2e52 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(26,46,82,0.08) !important;
}

/* Labels */
.woocommerce-account label {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    color: #555 !important;
}

/* Bestellungstabelle */
.woocommerce-account .woocommerce-orders-table {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 0.84rem !important;
    width: 100% !important;
    border-collapse: collapse !important;
}
.woocommerce-account .woocommerce-orders-table th {
    background: #1a2e52 !important;
    color: #fff !important;
    padding: 10px 12px !important;
    font-weight: 600 !important;
    font-size: 0.78rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
}
.woocommerce-account .woocommerce-orders-table td {
    padding: 10px 12px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    color: #444 !important;
}
.woocommerce-account .woocommerce-orders-table tr:hover td {
    background: #f9f9f9 !important;
}

/* Login-Formular auf /mein-konto/ */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 4px !important;
    padding: 28px 32px !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}
.woocommerce-account .woocommerce-form-login h2,
.woocommerce-account .woocommerce-form-register h2 {
    color: #1a2e52 !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    border-bottom: 2px solid #e8e8e8 !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

/* =============================================
   KUNDENSERVICE-SEITE
   ============================================= */
.bm-ks-grid3 {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
}
.bm-ks-grid2 {
    display: grid !important;
    grid-template-columns: 1fr 300px !important;
    gap: 20px !important;
    align-items: start !important;
}
@media (max-width: 700px) {
    .bm-ks-grid3 { grid-template-columns: 1fr !important; }
    .bm-ks-grid2 { grid-template-columns: 1fr !important; }
}

/* Buttons auf Kundenservice + anderen Seiten — immer weiße Schrift */
.page-id-443 a[style*="background:#c8102e"],
.page-id-443 a[style*="background: #c8102e"],
.page-id-437 a[style*="background:#c8102e"] {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
.page-id-443 a[style*="background:rgba(255,255,255,0.15)"] {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
/* Generell: alle inline-styled Buttons auf Info-Seiten */
.page-id-443 a, .page-id-441 a, .page-id-437 a {
    -webkit-text-fill-color: inherit;
}

/* =============================================
   MERKLISTE — TI WooCommerce Wishlist
   ============================================= */

/* Seitenheader */
.page-id-446 .entry-title {
    font-family: 'Poppins', Arial, sans-serif !important;
    background: linear-gradient(135deg, #1a2e52 0%, #2a4070 100%) !important;
    color: #fff !important;
    padding: 32px 32px 28px !important;
    border-radius: 4px !important;
    margin-bottom: 24px !important;
    font-size: 1.6rem !important;
    font-weight: 700 !important;
}

/* Haupt-Container */
.tinvwl_wishlist_products,
.tinvwl-table,
table.tinvwl-table {
    font-family: 'Poppins', Arial, sans-serif !important;
    width: 100% !important;
    border-collapse: collapse !important;
}

/* Tabellen-Header */
.tinvwl-table thead th,
table.tinvwl-table thead th {
    background: #1a2e52 !important;
    color: #fff !important;
    padding: 12px 14px !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    border: none !important;
}

/* Tabellen-Zeilen */
.tinvwl-table tbody tr,
table.tinvwl-table tbody tr {
    border-bottom: 1px solid #f0f0f0 !important;
}
.tinvwl-table tbody tr:hover,
table.tinvwl-table tbody tr:hover {
    background: #f9f9f9 !important;
}
.tinvwl-table tbody td,
table.tinvwl-table tbody td {
    padding: 14px !important;
    vertical-align: middle !important;
    font-size: 0.85rem !important;
    color: #444 !important;
    border: none !important;
}

/* Produktbild */
.tinvwl-table .product-thumbnail img {
    width: 70px !important;
    height: 90px !important;
    object-fit: contain !important;
    border-radius: 3px !important;
    background: #f7f7f7 !important;
    padding: 4px !important;
}

/* Produktname */
.tinvwl-table .product-name a {
    color: #1a2e52 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    font-size: 0.88rem !important;
}
.tinvwl-table .product-name a:hover {
    color: #c8102e !important;
}

/* Preis */
.tinvwl-table .product-price .woocommerce-Price-amount {
    color: #c8102e !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
}

/* Warenkorb-Button */
.tinvwl-table .product-add-to-cart a.button,
.tinvwl-table .product-add-to-cart button,
.tinvwl-wl-list-wrapper .tinvwl-btn {
    font-family: 'Poppins', Arial, sans-serif !important;
    background: #1a2e52 !important;
    color: #fff !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 9px 16px !important;
    border-radius: 3px !important;
    border: none !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
    white-space: nowrap !important;
}
.tinvwl-table .product-add-to-cart a.button:hover,
.tinvwl-table .product-add-to-cart button:hover,
.tinvwl-wl-list-wrapper .tinvwl-btn:hover {
    background: #c8102e !important;
    color: #fff !important;
}

/* Entfernen-Button (X) */
.tinvwl-table .product-remove a,
.tinvwl-table .product-remove button {
    color: #999 !important;
    font-size: 1.2rem !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    padding: 0 !important;
    transition: color 0.15s !important;
}
.tinvwl-table .product-remove a:hover,
.tinvwl-table .product-remove button:hover {
    color: #c8102e !important;
}

/* Leere Merkliste */
.tinvwl-empty p,
.tinvwl-wishlist-products .tinvwl-no-items {
    font-family: 'Poppins', Arial, sans-serif !important;
    color: #888 !important;
    font-size: 0.95rem !important;
    text-align: center !important;
    padding: 40px 20px !important;
}

/* Social Share Buttons */
.tinvwl-wl-list-wrapper .tinvwl-social-buttons a {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    padding: 6px 12px !important;
    border-radius: 3px !important;
    text-decoration: none !important;
}

/* Wishlist-Name Überschrift */
.tinvwl-wishlist-name {
    font-family: 'Poppins', Arial, sans-serif !important;
    color: #1a2e52 !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    border-bottom: 2px solid #e8e8e8 !important;
    padding-bottom: 10px !important;
    margin-bottom: 16px !important;
}

/* Add-to-Wishlist Button auf Produktseiten */
.tinvwl_add_to_wishlist_button a,
.tinvwl-above-btn a {
    font-family: 'Poppins', Arial, sans-serif !important;
    color: #1a2e52 !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 14px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 3px !important;
    margin-top: 8px !important;
    transition: border-color 0.15s, color 0.15s !important;
}
.tinvwl_add_to_wishlist_button a:hover,
.tinvwl-above-btn a:hover {
    color: #c8102e !important;
    border-color: #c8102e !important;
}

/* TI Wishlist Buttons — Navy/Rot erzwingen */
.tinvwl_add_to_wishlist .tinvwl-button,
.tinvwl-table a.button,
.tinvwl-table button.button,
.woocommerce .tinvwl-table .button,
input.tinvwl-button,
button.tinvwl-button,
a.tinvwl-button,
.tinvwl-wl-list-wrapper input[type=submit],
.tinvwl-wl-list-wrapper button[type=submit],
.tinvwl-wl-list-wrapper .tinvwl-btn.tinvwl-btn-default {
    background: #1a2e52 !important;
    color: #fff !important;
    border: none !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 10px 16px !important;
    border-radius: 3px !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
}
.tinvwl_add_to_wishlist .tinvwl-button:hover,
.tinvwl-table a.button:hover,
.tinvwl-table button.button:hover,
.tinvwl-wl-list-wrapper input[type=submit]:hover,
.tinvwl-wl-list-wrapper button[type=submit]:hover,
.tinvwl-wl-list-wrapper .tinvwl-btn.tinvwl-btn-default:hover {
    background: #c8102e !important;
    color: #fff !important;
}

/* "Aktionen" Dropdown */
.tinvwl-wl-list-wrapper select {
    font-family: 'Poppins', Arial, sans-serif !important;
    border: 1px solid #ddd !important;
    border-radius: 3px !important;
    padding: 8px 12px !important;
    font-size: 0.82rem !important;
}

/* Wishlist Titel h2 */
.tinvwl-wl-list-wrapper h2,
.tinvwl-wishlist-name h2,
.page-id-446 .entry-content h2:first-of-type {
    font-family: 'Poppins', Arial, sans-serif !important;
    color: #1a2e52 !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    border-bottom: 2px solid #e8e8e8 !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

/* Tabellen-Header Navy */
.tinvwl-table thead,
table.tinvwl-table > thead {
    background: #1a2e52 !important;
}
.tinvwl-table thead tr th,
table.tinvwl-table thead tr th {
    background: #1a2e52 !important;
    color: #fff !important;
    padding: 12px 14px !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    border: none !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}

/* Wishlist Buttons — Navy erzwingen über Astra's .button Override */
.page-id-446 .button,
.page-id-446 a.button,
.page-id-446 button.button,
.page-id-446 input.button,
.woocommerce .tinvwl-wl-list-wrapper .button,
.woocommerce-page .tinvwl-wl-list-wrapper .button {
    background: #1a2e52 !important;
    background-color: #1a2e52 !important;
    color: #fff !important;
    border: none !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    border-radius: 3px !important;
}
.page-id-446 .button:hover,
.page-id-446 a.button:hover,
.page-id-446 button.button:hover,
.woocommerce .tinvwl-wl-list-wrapper .button:hover,
.woocommerce-page .tinvwl-wl-list-wrapper .button:hover {
    background: #c8102e !important;
    background-color: #c8102e !important;
    color: #fff !important;
}

/* =============================================
   KATEGORIE-SIDEBAR
   ============================================= */

/* Wrapper: Sidebar + Produkt-Grid nebeneinander */
.tax-product_cat .ast-woocommerce-container,
.woocommerce-page.tax-product_cat .ast-woocommerce-container,
body.tax-product_cat .ast-woocommerce-container {
    display: block !important;
}

/* Sidebar */
.bm-cat-sidebar {
    position: sticky !important;
    top: 20px !important;
}

/* Produkt-Grid-Bereich */
.bm-cat-products {
    min-width: 0 !important;
    overflow: visible !important;
}

/* Kategorie-Navigation */
.bm-cat-nav {
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}

/* Hauptkategorie */
.bm-cat-top {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 10px 12px !important;
    font-size: 0.80rem !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    text-decoration: none !important;
    background: #f7f9fc !important;
    border-bottom: 1px solid #eee !important;
    transition: background 0.12s !important;
}
.bm-cat-top:hover {
    background: #eef2f8 !important;
    color: #1a2e52 !important;
}
.bm-cat-top--active {
    background: #1a2e52 !important;
    color: #fff !important;
}
.bm-cat-top--active:hover {
    background: #1a2e52 !important;
    color: #fff !important;
}

/* Pfeil */
.bm-cat-arrow {
    font-size: 0.7rem !important;
    flex-shrink: 0 !important;
}

/* Unterkategorien-Liste */
.bm-cat-subs {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
}
.bm-cat-subs li {
    border-bottom: 1px solid #f5f5f5 !important;
    margin: 0 !important;
}
.bm-cat-subs li:last-child {
    border-bottom: none !important;
}

/* Unterkategorie-Link */
.bm-cat-sub {
    display: block !important;
    padding: 8px 10px 8px 24px !important;
    font-size: 0.76rem !important;
    font-weight: 400 !important;
    color: #555 !important;
    text-decoration: none !important;
    transition: color 0.12s, background 0.12s !important;
    position: relative !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.bm-cat-sub::before {
    content: '–' !important;
    position: absolute !important;
    left: 14px !important;
    color: #ccc !important;
}
.bm-cat-sub:hover {
    color: #c8102e !important;
    background: #fdf5f5 !important;
}

/* Aktive Unterkategorie */
.bm-cat-sub--active {
    color: #c8102e !important;
    font-weight: 700 !important;
    background: #fdf5f5 !important;
}
.bm-cat-sub--active::before {
    color: #c8102e !important;
}

/* Grid auf Produktbereich beschränken */
.bm-cat-products ul.products,
.bm-cat-products ul.products.columns-4,
.bm-cat-products ul.products.columns-3 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
}
@media (max-width: 921px) {
    .tax-product_cat .ast-woocommerce-container { grid-template-columns: 1fr !important; }
    .bm-cat-sidebar { position: static !important; }
    .bm-cat-products ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 544px) {
    .bm-cat-products ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}

/* Breadcrumb und Page-Header über voller Breite */
.tax-product_cat .ast-woocommerce-container .woocommerce-breadcrumb,
.tax-product_cat .ast-woocommerce-container .woocommerce-products-header {
    grid-column: 1 / -1 !important;
}

/* Nav-Titel */
.bm-cat-nav-title {
    padding: 10px 14px 8px !important;
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    color: #999 !important;
    border-bottom: 1px solid #eee !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}

/* =============================================
   KATEGORIE-ARCHIV — LAYOUT
   ============================================= */

/* Verstecke WC eigenen Seiten-Titel */
.tax-product_cat .entry-title,
.tax-product_cat .woocommerce-products-header {
    display: none !important;
}

/* === LAYOUT: Sidebar + Main === */
.bm-archive-layout {
    display: grid !important;
    grid-template-columns: 200px 1fr !important;
    gap: 20px !important;
    align-items: start !important;
}
@media (max-width: 768px) {
    .bm-archive-layout { grid-template-columns: 1fr !important; }
}

/* === SIDEBAR === */
.bm-archive-sidebar {
    position: sticky !important;
    top: 20px !important;
}
.bm-sidebar-block {
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    margin-bottom: 12px !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}
.bm-sidebar-title {
    background: #1a2e52 !important;
    color: #fff !important;
    padding: 9px 12px !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}
.bm-sidebar-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.bm-sidebar-list li {
    border-bottom: 1px solid #f5f5f5 !important;
    margin: 0 !important;
}
.bm-sidebar-list li:last-child { border-bottom: none !important; }
.bm-sidebar-link {
    display: block !important;
    padding: 8px 12px !important;
    font-size: 0.80rem !important;
    font-weight: 400 !important;
    color: #444 !important;
    text-decoration: none !important;
    transition: color 0.12s, background 0.12s, padding-left 0.12s !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.bm-sidebar-link:hover {
    color: #c8102e !important;
    background: #fdf5f5 !important;
    padding-left: 16px !important;
}
.bm-sidebar-link--active {
    color: #c8102e !important;
    font-weight: 700 !important;
    background: #fdf5f5 !important;
    border-left: 3px solid #c8102e !important;
    padding-left: 9px !important;
}

/* === MAIN: Produkt-Grid === */
.bm-archive-main {
    min-width: 0 !important;
}

/* Sortierung oben */
.bm-archive-main .woocommerce-ordering,
.bm-archive-main .woocommerce-result-count {
    display: inline-block !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 0.82rem !important;
    color: #666 !important;
    margin-bottom: 12px !important;
}
.bm-archive-main .woocommerce-ordering select {
    border: 1px solid #ddd !important;
    border-radius: 3px !important;
    padding: 5px 28px 5px 10px !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 0.80rem !important;
    color: #333 !important;
    cursor: pointer !important;
}

/* Produkt-Grid 4 Spalten */
.bm-archive-main ul.products,
.bm-archive-main ul.products.columns-4,
.bm-archive-main ul.products.columns-3 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
@media (max-width: 600px) {
    .bm-archive-main ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}

/* Sortierung + Ergebnisanzahl wieder sichtbar (waren ausgeblendet) */
.tax-product_cat .bm-archive-main .woocommerce-ordering,
.tax-product_cat .bm-archive-main .woocommerce-result-count {
    display: inline-block !important;
}

/* Sortierung im archive-main explizit sichtbar */
.tax-product_cat .bm-archive-main .woocommerce-ordering,
.tax-product_cat .bm-archive-main .woocommerce-result-count,
body.tax-product_cat .bm-archive-main form.woocommerce-ordering {
    display: block !important;
    visibility: visible !important;
}

/* Sortier-Bar-Wrapper */
.bm-archive-main-top {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #eee !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}

/* Banner: volle Breite über dem Layout */
.bm-archive-banner {
    grid-column: 1 / -1 !important;
}

/* WC eigene Sortierleiste ausblenden (wir haben unsere eigene) */
.tax-product_cat .woocommerce-ordering,
.tax-product_cat .woocommerce-result-count {
    display: none !important;
}

/* Unsere eigene Sortierleiste */
.bm-sort-bar {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #eee !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}
.bm-sort-count {
    font-size: 0.80rem !important;
    color: #888 !important;
    margin-right: auto !important;
}
.bm-sort-form {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.bm-sort-form label {
    font-size: 0.80rem !important;
    color: #555 !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
}
.bm-sort-form select {
    border: 1px solid #ddd !important;
    border-radius: 3px !important;
    padding: 6px 28px 6px 10px !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 0.80rem !important;
    color: #333 !important;
    cursor: pointer !important;
    background: #fff !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.5' fill='none'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 8px center !important;
}

/* =============================================
   BM PRODUKTKARTE — Kategorie-Archivseiten
   Saubere Version ohne position:absolute Hacks
   ============================================= */

/* li-Wrapper */
.bm-pcard-li {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    width: 100% !important;
    float: none !important;
}

/* Karte */
.bm-pcard {
    background: #fff;
    border: none;
    border-radius: 4px;
    overflow: visible;
    display: flex;
    flex-direction: column;
    height: 100%;
    font-family: 'Poppins', Arial, sans-serif;
    transition: box-shadow 0.18s;
    position: relative;
}
.bm-pcard:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}

/* Cover-Wrapper: quadratisch, overflow hidden, kein absolute positioning */
.bm-pcard-imgwrap {
    display: block;
    width: 100%;
    background: #f7f7f7;
    border-radius: 4px 4px 0 0;
    border-bottom: 1px solid #efefef;
    text-decoration: none;
    position: relative;
    line-height: 0;
}

/* Inline-Style Override für bm-pcard-cover */


/* Info-Bereich */
.bm-pcard-info {
    padding: 8px 10px 0;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.bm-pcard-format {
    font-size: 0.68rem;
    color: #999;
    margin-bottom: 3px;
    font-family: 'Poppins', Arial, sans-serif;
}
.bm-pcard-title {
    font-size: 0.78rem;
    font-weight: 600;
    color: #1a2e52;
    text-decoration: none;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 4px;
    font-family: 'Poppins', Arial, sans-serif;
}
.bm-pcard-title:hover { color: #c8102e; }
.bm-pcard-price {
    font-size: 0.9rem;
    font-weight: 700;
    color: #c8102e;
    margin-top: auto;
    padding: 4px 0 6px;
    font-family: 'Poppins', Arial, sans-serif;
}

/* Warenkorb-Button: nur bei Hover */
.bm-pcard-btn {
    display: block !important;
    background: #1a2e52 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 0.70rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    padding: 9px 10px !important;
    text-decoration: none !important;
    border-radius: 0 0 3px 3px !important;
    margin: 0 -10px !important;
    opacity: 0 !important;
    pointer-events: none !important;
    font-family: 'Poppins', Arial, sans-serif !important;
}
/* Sprint 6: Button erscheint bei Karten-Hover — bleibt Navy */
.bm-pcard:hover .bm-pcard-btn {
    opacity: 1 !important;
    pointer-events: auto !important;
    background: #1a2e52 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
/* Nur beim direkten Hover auf dem Button wird er Rot */
.bm-pcard-btn:hover,
.bm-pcard-btn:hover * {
    background: #c8102e !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* Grid: 4 Spalten im Archive-Main */
.bm-archive-main ul.products,
.bm-archive-main ul.products.columns-4,
.bm-archive-main ul.products.columns-3 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
@media (max-width: 600px) {
    .bm-archive-main ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}

/* Germanized auf Archivseiten */
.tax-product_cat .wc-gzd-additional-info-loop { display: none !important; }

/* Seitenrand links/rechts */
.tax-product_cat .ast-woocommerce-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.bm-archive-layout,
.bm-archive-banner {
    max-width: 100% !important;
}

/* Heading im Produkt-Bereich */
.bm-products-heading {
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #e8e8e8 !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    color: #888 !important;
}
.bm-products-heading strong {
    color: #c8102e !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
}

/* NEU-Badge */
.bm-pcard-new-badge {
    position: absolute !important;
    top: 8px !important;
    left: 8px !important;
    background: #c8102e !important;
    color: #fff !important;
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    padding: 3px 7px !important;
    border-radius: 3px !important;
    letter-spacing: 0.5px !important;
    z-index: 10 !important;
}

/* Counter-Badge */
.bm-pcard-num {
    position: absolute !important;
    top: 6px !important;
    left: 6px !important;
    background: rgba(26,46,82,0.80) !important;
    color: #fff !important;
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    padding: 2px 6px !important;
    border-radius: 2px !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    line-height: 1.4 !important;
    z-index: 2 !important;
}

/* Override: Inline-CSS auf .bm-pcard img und ul.products li.product img */


/* Sprint 1: Cover — feste Höhe, auto-Breite, linksbündig */
.bm-pcard-cover,
.tax-product_cat .bm-pcard img.bm-pcard-cover,
.tax-product_cat ul.products li.product .bm-pcard img,
.tax-product_cat ul.products li.product .bm-pcard-imgwrap img {
    height: 180px !important;
    width: auto !important;
    max-width: 100% !important;
    object-fit: unset !important;
    object-position: unset !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
}

/* Wrapper: feste Höhe, weiß, kein overflow-clipping */
.bm-pcard-imgwrap {
    display: block !important;
    width: 100% !important;
    height: 196px !important;
    background: #fff !important;
    border-radius: 4px 4px 0 0 !important;
    border-bottom: 1px solid #efefef !important;
    text-decoration: none !important;
    position: relative !important;
    overflow: hidden !important;
    padding: 8px 0 8px 8px !important;
    box-sizing: border-box !important;
}

/* Sprint 1: FINALER Override — stärker als alle ul.products Regeln */
.tax-product_cat ul.products li.bm-pcard-li .bm-pcard-imgwrap img,
.tax-product_cat ul.products li.bm-pcard-li .bm-pcard .bm-pcard-cover,
.woocommerce-page.tax-product_cat .bm-pcard img {
    width: auto !important;
    height: 180px !important;
    max-width: 100% !important;
    object-fit: unset !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    float: none !important;
}

/* FINAL: body-Klasse + a + img = höchste Spezifität */
body.tax-product_cat .woocommerce-js ul.products li.bm-pcard-li a.bm-pcard-imgwrap img,
body.woocommerce-page.tax-product_cat ul.products li.product a img.bm-pcard-cover {
    width: auto !important;
    max-width: 100% !important;
    height: 180px !important;
    object-fit: unset !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
}

/* === SIDEBAR KATEGORIEN === */
.bm-sidebar-cats {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 16px 18px;
    margin-bottom: 20px;
}
.bm-sidebar-heading {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 0 12px !important;
    font-family: Poppins, sans-serif !important;
    border-bottom: 2px solid #c8102e !important;
    padding-bottom: 8px !important;
}
.bm-sidebar-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.bm-sidebar-list li {
    border-bottom: 1px solid #f5f5f5 !important;
}
.bm-sidebar-list li:last-child {
    border-bottom: none !important;
}
.bm-sidebar-list li a {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 4px !important;
    text-decoration: none !important;
    color: #444 !important;
    font-size: 13px !important;
    font-family: Poppins, sans-serif !important;
    transition: color 0.12s !important;
}
.bm-sidebar-list li a:hover {
    color: #c8102e !important;
}
.bm-sidebar-list li.bm-sidebar-active a {
    color: #c8102e !important;
    font-weight: 700 !important;
}
.bm-sidebar-count {
    font-size: 11px !important;
    color: #999 !important;
}

/* Sprint 2: Seitenrand auf Kategorie-Archivseiten */
.tax-product_cat .ast-woocommerce-container {
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* Verstecke WC eigenen Seiten-Titel */

/* === BANNER ===  */
.bm-archive-banner {
    position: relative !important;
    background: linear-gradient(135deg, #1a2e52 0%, #15253f 60%, #1e3460 100%) !important;
    border-radius: 6px !important;
    margin-bottom: 24px !important;
    overflow: hidden !important;
    padding: 0 !important;
}
/* Roter Akzent links */
.bm-banner-accent {
    position: absolute !important;
    left: 0 !important; top: 0 !important; bottom: 0 !important;
    width: 5px !important;
    background: #c8102e !important;
    border-radius: 6px 0 0 6px !important;
}
/* Dezentes Hintergrundmuster */
.bm-archive-banner::after {
    content: '' !important;
    position: absolute !important;
    right: -60px !important; top: -60px !important;
    width: 280px !important; height: 280px !important;
    border: 40px solid rgba(255,255,255,0.03) !important;
    border-radius: 50% !important;
    pointer-events: none !important;
}
.bm-archive-banner::before {
    content: '' !important;
    position: absolute !important;
    right: 60px !important; bottom: -80px !important;
    width: 180px !important; height: 180px !important;
    border: 30px solid rgba(200,16,46,0.06) !important;
    border-radius: 50% !important;
    pointer-events: none !important;
}
.bm-banner-content {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 28px 36px 28px 44px !important;
}
.bm-banner-left {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}
.bm-archive-breadcrumb {
    font-size: 0.75rem !important;
    color: rgba(255,255,255,0.45) !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    letter-spacing: 0.3px !important;
}
.bm-archive-breadcrumb a {
    color: rgba(255,255,255,0.45) !important;
    text-decoration: none !important;
    transition: color 0.15s !important;
}
.bm-archive-breadcrumb a:hover { color: rgba(255,255,255,0.75) !important; }
.bm-archive-breadcrumb span { color: rgba(255,255,255,0.6) !important; }
.bm-archive-title {
    color: #fff !important;
    font-size: 2.2rem !important;
    font-weight: 800 !important;
    margin: 0 !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    line-height: 1.1 !important;
    letter-spacing: 1px !important;
}
.bm-archive-sub {
    color: rgba(255,255,255,0.55) !important;
    font-size: 0.88rem !important;
    font-style: italic !important;
    margin: 0 !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.2px !important;
}
.bm-banner-count {
    font-size: 0.80rem !important;
    color: rgba(255,255,255,0.4) !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-weight: 400 !important;
    align-self: flex-start !important;
    background: rgba(255,255,255,0.07) !important;
    padding: 4px 10px !important;
    border-radius: 20px !important;
    white-space: nowrap !important;
}

/* Verstecke WC eigenen Seiten-Titel */

/* Sprint 6: Hover-State feintunen */

/* Karte: smoother Übergang + Schatten */
.bm-pcard {
    transition: box-shadow 0.22s ease, transform 0.18s ease !important;
}
.bm-pcard:hover {
    box-shadow: 0 6px 24px rgba(0,0,0,0.13) !important;
    transform: translateY(-2px) !important;
}

/* Button: von unten einschieben */
.bm-pcard-btn {
    transform: translateY(6px) !important;
    transition: opacity 0.20s ease, transform 0.20s ease, background 0.15s !important;
}
.bm-pcard:hover .bm-pcard-btn {
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}

/* Nummer-Badge beim Hover aufhellen */
.bm-pcard:hover .bm-pcard-num {
    background: rgba(200,16,46,0.85) !important;
    transition: background 0.2s !important;
}

/* Titel-Farbe beim Hover — bleibt Navy */
.bm-pcard:hover .bm-pcard-title {
    color: #1a2e52 !important;
}

/* Cover: minimaler Zoom beim Hover */
.bm-pcard-imgwrap {
    overflow: hidden !important;
}
.bm-pcard-cover {
    transition: transform 0.25s ease !important;
}
.bm-pcard:hover .bm-pcard-cover {
    transform: scale(1.03) !important;
}

/* ── Sprint 8 Button-Overlap Fix (2026-04-09) ─────────────────────────────
   Button position:absolute → aus dem Flow → keine Überlappungen mehr.
   overflow:hidden entfernt damit Cover korrekt angezeigt werden.
   ─────────────────────────────────────────────────────────────────────── */
.bm-pcard-btn {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    border-radius: 0 0 3px 3px !important;
    width: 100% !important;
    transform: translateY(100%) !important;
    transition: opacity 0.20s ease, transform 0.20s ease, background 0.15s !important;
}
.bm-pcard:hover .bm-pcard-btn {
    transform: translateY(0) !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* ── Sprint 9: Slider-Karten Card-Look (2026-04-09) ──────────────────────
   Karten auf Startseite: weißer Hintergrund, abgerundete Ecken, dezenter
   Schatten statt Border — matcht Header/Footer-Stil.
   ──────────────────────────────────────────────────────────────────────── */
.bm-homepage-sliders ul.products li.product,
.bm-slider-section ul.products li.product,
.b24-section ul.products li.product {
    border: none !important;
    border-radius: 4px !important;
    background: #fff !important;
    box-shadow: 0 1px 5px rgba(0,0,0,0.08) !important;
    transition: box-shadow 0.2s ease, transform 0.18s ease !important;
}
.bm-homepage-sliders ul.products li.product:hover,
.bm-slider-section ul.products li.product:hover,
.b24-section ul.products li.product:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.13) !important;
    transform: translateY(-2px) !important;
}

/* ── Sprint 9b: Slider-Abstand + stärkerer Schatten (2026-04-09) ─────────
   Slider-Sections: Außenabstand links/rechts wie Footer (~40px),
   Schatten etwas kräftiger.
   ──────────────────────────────────────────────────────────────────────── */
.bm-slider-section, .b24-section {
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.09) !important;
}
@media (max-width: 768px) {
    .bm-slider-section, .b24-section {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* ── Sprint 9c: Slider-Karten Rahmen Fix (2026-04-09) ───────────────────
   Slider-Items liegen in .swiper-slide, nicht in ul.products →
   Selector direkt auf .bm-swiper li.product
   ──────────────────────────────────────────────────────────────────────── */
.bm-swiper li.product,
.bm-swiper .swiper-slide li.product {
    border: 1px solid #e0e0e0 !important;
    border-radius: 4px !important;
    background: #fff !important;
    box-shadow: 0 1px 5px rgba(0,0,0,0.07) !important;
    overflow: hidden !important;
    transition: box-shadow 0.2s ease, transform 0.18s ease !important;
}
.bm-swiper li.product:hover,
.bm-swiper .swiper-slide li.product:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.13) !important;
    transform: translateY(-2px) !important;
}

/* ── Sprint 9d: Slider-Karten Rahmen — Astra Override (2026-04-09) ───────
   Astra setzt .ast-article-single border:none mit hoher Spezifität.
   Wir überschreiben mit kombiniertem Selector.
   ──────────────────────────────────────────────────────────────────────── */
.bm-swiper li.product.ast-article-single,
.bm-slider-row li.product.ast-article-single,
.bm-homepage-sliders li.product.ast-article-single {
    border: 1px solid #e0e0e0 !important;
    border-radius: 4px !important;
    background: #fff !important;
    box-shadow: 0 1px 5px rgba(0,0,0,0.07) !important;
    overflow: hidden !important;
    transition: box-shadow 0.2s ease, transform 0.18s ease !important;
}
.bm-swiper li.product.ast-article-single:hover,
.bm-slider-row li.product.ast-article-single:hover,
.bm-homepage-sliders li.product.ast-article-single:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.13) !important;
    transform: translateY(-2px) !important;
}

/* ── Sprint 10: bm-pcard Box-Shadow (einheitlicher Card-Look, 2026-04-09) */
.bm-pcard {
    box-shadow: 0 1px 6px rgba(0,0,0,0.10) !important;
}
.bm-pcard:hover {
    box-shadow: 0 4px 18px rgba(0,0,0,0.15) !important;
}


/* ── Sprint 10c: Slider Außenabstand links/rechts (2026-04-09) */
.bm-homepage-sliders {
    padding-left: 40px !important;
    padding-right: 40px !important;
}
@media (max-width: 768px) {
    .bm-homepage-sliders {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* ── Sprint 10d: Startseite Außenabstand — höhere Spezifität (2026-04-09) */
.entry-content .bm-homepage-sliders,
.entry-content .bm-slider-section,
.entry-content .b24-section {
    padding-left: 40px !important;
    padding-right: 40px !important;
}
@media (max-width: 768px) {
    .entry-content .bm-homepage-sliders,
    .entry-content .bm-slider-section,
    .entry-content .b24-section {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* ── Sprint 10e: Startseite Slider max-width + zentriert (2026-04-09) */
.entry-content .bm-homepage-sliders {
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
}

/* ── Sprint 10f/10g: Hero-Einschränkungen entfernt (Slider soll fullwidth sein) */
/* Hero-Slider ist fullwidth — kein max-width */
.bm-hero-slider-outer,
.bm-hero-swiper,
.bm-hero-swiper .swiper-wrapper,
.bm-hero-swiper .swiper-slide {
    max-width: 100% !important;
    width: 100% !important;
}


/* ── Sprint 11c: Beide Borders entfernen (2026-04-09) */
li.bm-pcard-li {
    border: none !important;
    box-shadow: none !important;
}
.bm-pcard {
    border: none !important;
}


/* ── Sprint 11d: bm-pcard volle Höhe des li ausfüllen (2026-04-09) */
li.bm-pcard-li {
    display: flex !important;
    flex-direction: column !important;
}
li.bm-pcard-li .bm-pcard {
    flex: 1 !important;
    height: auto !important;
}

/* ── Sprint 11e: li.bm-pcard-li Border weg mit hoher Spezifität */
body .woocommerce ul.products li.product.bm-pcard-li,
body ul.products li.product.bm-pcard-li {
    border: none !important;
    outline: none !important;
}

/* === SEARCH FILTER === */
.bm-search-filter {
    display: inline-flex;
    gap: 8px;
    align-items: center;
}
.bm-search-filter select {
    padding: 8px 12px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    font-size: 13px;
    font-family: Poppins, sans-serif;
    color: #555;
    background: #fff;
    cursor: pointer;
}
.bm-search-filter select:hover { border-color: #1a2e52; }
.bm-search-filter select:focus { outline: none; border-color: #c8102e; box-shadow: 0 0 0 2px rgba(200,16,46,0.1); }

/* ════════════════════════════════════════════════════════════════════════
   SPRINT 12 — CSS FIXES (2026-04-14)
════════════════════════════════════════════════════════════════════════ */

/* 1. Bewertungssterne ausblenden */
.bm-pcard .star-rating,
.woocommerce ul.products li.product .star-rating,
.woocommerce ul.products li.product .woocommerce-loop-product__rating {
    display: none !important;
}

/* 2. 5-Spalten-Grid auf Desktop */
.woocommerce ul.products.columns-4,
.woocommerce ul.products {
    grid-template-columns: repeat(5, 1fr) !important;
}
@media (max-width: 1024px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}
@media (max-width: 600px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* 3. Hover-Effekt auf Produktkarten verbessern */
.bm-pcard:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.12) !important;
    border-color: #c8102e !important;
    transform: translateY(-2px);
    transition: all 0.15s ease;
}

/* === MOBILE NAVIGATION === */
@media (max-width: 768px) {
    /* Header Layout */
    .bm-hdr-inner { flex-wrap: wrap !important; gap: 8px !important; }
    .bm-hdr-search { order: 3; width: 100% !important; }
    .bm-hdr-allcat { display: none !important; }
    
    /* Mega-Menü auf Mobile ausblenden, WP Mobile Menü nutzen */
    .bm-nav-bar { display: none !important; }
    
    /* Produktgrid auf Mobile: 2 Spalten */
    .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; }
    
    /* Produktkarten-Text kürzer */
    .bm-pcard-desc { display: none !important; }
    .bm-pcard-title { font-size: 12px !important; }
    .bm-pcard-price { font-size: 13px !important; }
}

@media (max-width: 480px) {
    .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
    .bm-pcard { padding: 8px !important; }
}

/* === SALE BADGE === */
.bm-sale-badge {
    position: absolute !important;
    top: 8px !important;
    right: 8px !important;
    background: #c8102e !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 3px 7px !important;
    border-radius: 3px !important;
    z-index: 2 !important;
    font-family: Poppins, sans-serif !important;
    letter-spacing: 0.5px !important;
}
.bm-pcard { position: relative !important; }
.onsale { display: none !important; } /* WC default "Sale!" ausblenden */

/* === UNTERGENRE-KACHELN === */
.bm-subcat-tiles {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 0 28px !important;
    padding: 0 !important;
}
.bm-subcat-tile {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 14px 18px !important;
    text-decoration: none !important;
    color: #1a2e52 !important;
    font-family: Poppins, sans-serif !important;
    transition: border-color 0.15s, box-shadow 0.15s !important;
    min-width: 120px !important;
}
.bm-subcat-tile:hover {
    border-color: #c8102e !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}
.bm-subcat-name {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1a2e52 !important;
}
.bm-subcat-count {
    font-size: 11px !important;
    color: #999 !important;
    margin-top: 3px !important;
}

/* === RANKING NUMMERN === */
.bm-rank-number {
    position: absolute;
    top: 8px;
    left: 8px;
    background: #1a2e52;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
    font-family: Poppins, sans-serif;
}

/* === ZAHLUNGSARTEN BAR === */
.bm-payment-bar {
    background: #f7f7f7;
    border-top: 1px solid #e0e0e0;
    padding: 14px 0;
}
.bm-payment-inner {
    max-width: 1265px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
.bm-payment-label {
    font-size: 13px;
    font-weight: 600;
    color: #555;
    font-family: Poppins, sans-serif;
    white-space: nowrap;
}
.bm-payment-icons {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}
.bm-pay-icon {
    display: inline-flex;
    align-items: center;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    padding: 4px 10px;
    font-size: 12px;
    color: #444;
    font-family: Poppins, sans-serif;
    white-space: nowrap;
}

/* === PRODUKTKARTEN ALIGNMENT FIX (23:56) ===
   Alle Cards als Flex-Column → Preis+Button immer am unteren Rand */
.woocommerce ul.products li.product,
.woocommerce ul.products li.product.bm-pcard-li,
.bm-pcard {
    display: flex !important;
    flex-direction: column !important;
}
.woocommerce ul.products li.product .bm-pcard-body,
.bm-pcard .bm-pcard-body {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .bm-pcard-price {
    margin-top: auto !important;
}
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .add_to_cart_button,
.bm-pcard .add_to_cart_button,
.bm-pcard a.button {
    margin-top: 8px !important;
    align-self: stretch !important;
}
/* Ähnliche Produkte (related products) — gleiche Logik */
.related ul.products li.product,
.upsells ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
}
.related ul.products li.product .woocommerce-loop-product__title,
.upsells ul.products li.product .woocommerce-loop-product__title {
    flex: 1 !important;
}

/* === PAGINATION DESIGN FIX (00:00) === */
.woocommerce nav.woocommerce-pagination {
    margin-top: 48px !important;
    padding-top: 32px !important;
    border-top: 1px solid #e0e0e0 !important;
    text-align: center !important;
}
.woocommerce nav.woocommerce-pagination ul {
    display: inline-flex !important;
    gap: 6px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}
.woocommerce nav.woocommerce-pagination ul li {
    border: none !important;
    line-height: 1 !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-family: Poppins, sans-serif !important;
    font-weight: 500 !important;
    color: #1a2e52 !important;
    background: #fff !important;
    text-decoration: none !important;
    transition: all 0.12s ease !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover {
    background: #1a2e52 !important;
    color: #fff !important;
    border-color: #1a2e52 !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #c8102e !important;
    color: #fff !important;
    border-color: #c8102e !important;
    font-weight: 700 !important;
}

/* === TRUST BAR + AWARDS BAR FIX (00:02) — stärkere Spezifität === */
body .bm-trust-bar { background: #1a2e52 !important; color: #fff !important; padding: 18px 0 !important; }
body .bm-trust-inner {
    max-width: 1265px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 16px !important;
}
body .bm-trust-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    flex: 1 1 160px !important;
    min-width: 0 !important;
}
body .bm-trust-icon { font-size: 22px !important; flex-shrink: 0 !important; }
body .bm-trust-text { font-size: 12px !important; line-height: 1.4 !important; color: #fff !important; }
body .bm-trust-text strong { display: block !important; font-size: 13px !important; font-weight: 600 !important; }

/* Awards Bar fix */
body .bm-awards-bar { background: #fff !important; border-top: 1px solid #e0e0e0 !important; border-bottom: 1px solid #e0e0e0 !important; padding: 20px 0 !important; }
body .bm-awards-inner {
    max-width: 1265px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-around !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
}
body .bm-award-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 6px !important;
    min-width: 100px !important;
}
body .bm-award-badge { font-size: 26px !important; }
body .bm-award-text { font-size: 11px !important; font-weight: 600 !important; color: #555 !important; line-height: 1.4 !important; }

/* Payment Bar fix */
body .bm-payment-bar { background: #f7f7f7 !important; border-top: 1px solid #e0e0e0 !important; padding: 14px 0 !important; }
body .bm-payment-inner {
    max-width: 1265px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
}
body .bm-payment-label { font-size: 13px !important; font-weight: 600 !important; color: #555 !important; white-space: nowrap !important; }
body .bm-payment-icons { display: flex !important; flex-direction: row !important; align-items: center !important; gap: 10px !important; flex-wrap: wrap !important; }
body .bm-pay-icon {
    display: inline-flex !important;
    align-items: center !important;
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 5px !important;
    padding: 4px 10px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
}

@media (max-width: 768px) {
    body .bm-trust-inner { flex-direction: column !important; align-items: flex-start !important; }
    body .bm-awards-inner { justify-content: center !important; }
}

/* === GRID + CARD HEIGHT FIX (00:08) === */
/* Grid: alle Karten gleich hoch */
.woocommerce ul.products {
    align-items: stretch !important;
}
.woocommerce ul.products li.product {
    height: 100% !important;
    box-sizing: border-box !important;
}
/* Cover-Bild immer gleich hoch */
.woocommerce ul.products li.product img {
    width: 100% !important;
    height: 200px !important;
    object-fit: contain !important;
    background: #f9f9f9 !important;
}
/* Titel fixe Höhe — max 2 Zeilen */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 13px !important;
    line-height: 1.4 !important;
    min-height: 2.8em !important;
    max-height: none !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}
/* Preis immer unten */
.woocommerce ul.products li.product .price {
    display: block !important;
    margin-top: auto !important;
    padding-top: 8px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #c8102e !important;
}
/* Button immer unten, volle Breite */
.woocommerce ul.products li.product a.button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-top: 8px !important;
    box-sizing: border-box !important;
}

/* Trust-Bar Icons — emoji Fallback sicherstellen */
.bm-trust-icon { font-style: normal !important; }

/* === TRUST BAR ICON FIX (final) === */
body .bm-trust-icon {
    font-size: 20px !important;
    font-style: normal !important;
    color: #fff !important;
    flex-shrink: 0 !important;
    width: 28px !important;
    text-align: center !important;
    line-height: 1 !important;
    display: inline-block !important;
    font-family: serif !important;
}

/* ===== FOOTER REDESIGN — einheitlich (15.04.2026) ===== */

/* Trust-Leiste: Navy, eine Zeile */
body .bm-footer-trust {
    background: #1a2e52;
    padding: 20px 0;
}
body .bm-footer-trust-grid {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}
body .bm-trust-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex: 1 1 150px !important;
}
body .bm-trust-ico {
    font-size: 18px !important;
    color: #fff !important;
    flex-shrink: 0 !important;
    width: 26px !important;
    text-align: center !important;
}
body .bm-trust-txt {
    display: flex !important;
    flex-direction: column !important;
}
body .bm-trust-txt strong {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    line-height: 1.3 !important;
}
body .bm-trust-txt span {
    font-size: 11px !important;
    color: rgba(255,255,255,0.7) !important;
    font-family: Poppins, sans-serif !important;
}

/* Footer Bottom — Zahlungsarten in einer Zeile mit Copyright */
body .bm-footer-bottom {
    background: #0d1e38 !important;
    padding: 14px 0 !important;
}
body .bm-footer-bottom-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}
body .bm-footer-pay-row {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
}
body .bm-footer-pay-label {
    font-size: 11px !important;
    color: rgba(255,255,255,0.6) !important;
    font-family: Poppins, sans-serif !important;
    margin-right: 4px !important;
}
body .bm-footer-pay-row .bm-pay-icon {
    background: rgba(255,255,255,0.12) !important;
    border: 1px solid rgba(255,255,255,0.2) !important;
    color: #fff !important;
    font-size: 10px !important;
    padding: 3px 8px !important;
    border-radius: 3px !important;
    font-weight: 600 !important;
    font-family: Poppins, sans-serif !important;
    white-space: nowrap !important;
}

/* Awards-Bar entfernen falls noch vorhanden */
body .bm-awards-bar,
body .bm-payment-bar { display: none !important; }

@media (max-width: 600px) {
    body .bm-footer-trust-grid { flex-direction: column !important; align-items: flex-start !important; }
    body .bm-footer-bottom-inner { flex-direction: column !important; align-items: flex-start !important; }
}

/* Footer Grid: explizit 5 Spalten */
body .bm-footer-grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 32px !important;
    padding: 40px 0 !important;
}
body .bm-footer-col { min-width: 0 !important; }
body .bm-footer-benefits { list-style: none !important; padding: 0 !important; margin: 0 !important; }
body .bm-footer-benefits li { font-size: 13px !important; color: rgba(255,255,255,0.8) !important; padding: 3px 0 !important; font-family: Poppins, sans-serif !important; }

/* Trust-Bar: immer eine Zeile, kleinere Fonts bei Platzmangel */
body .bm-footer-trust-grid { flex-wrap: nowrap !important; }
body .bm-trust-item { flex: 1 1 0 !important; min-width: 0 !important; }
body .bm-trust-txt strong { font-size: 11px !important; }
body .bm-trust-txt span { font-size: 10px !important; }

@media (max-width: 900px) {
    body .bm-footer-grid { grid-template-columns: repeat(2, 1fr) !important; }
    body .bm-footer-trust-grid { flex-wrap: wrap !important; }
}
@media (max-width: 600px) {
    body .bm-footer-grid { grid-template-columns: 1fr !important; }
}

/* Footer Grid force — Astra override */
body footer.bm-footer .bm-footer-grid,
body .bm-footer .bm-footer-main .bm-footer-grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    grid-template-rows: auto !important;
    gap: 28px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 36px 0 !important;
}
body footer.bm-footer .bm-footer-col {
    display: block !important;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
@media (max-width: 1024px) {
    body footer.bm-footer .bm-footer-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 700px) {
    body footer.bm-footer .bm-footer-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 480px) {
    body footer.bm-footer .bm-footer-grid { grid-template-columns: 1fr !important; }
}

/* ===== ÄHNLICHE PRODUKTE + UPSELLS — Card Alignment Fix ===== */
.woocommerce .related.products ul.products,
.woocommerce .upsells.products ul.products,
.woocommerce section.related ul.products,
.woocommerce section.upsells ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    align-items: stretch !important;
}
.woocommerce .related.products ul.products li.product,
.woocommerce .upsells.products ul.products li.product,
.woocommerce section.related ul.products li.product,
.woocommerce section.upsells ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    background: #fff !important;
    transition: border-color 0.15s, box-shadow 0.15s !important;
}
.woocommerce .related.products ul.products li.product:hover,
.woocommerce section.related ul.products li.product:hover {
    border-color: #c8102e !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08) !important;
}
/* Cover: feste Höhe */
.woocommerce .related.products ul.products li.product img,
.woocommerce section.related ul.products li.product img {
    width: 100% !important;
    height: 180px !important;
    object-fit: contain !important;
    background: #f9f9f9 !important;
    border-radius: 4px !important;
    margin-bottom: 10px !important;
}
/* Titel: max 2 Zeilen, feste Mindesthöhe */
.woocommerce .related.products ul.products li.product .woocommerce-loop-product__title,
.woocommerce section.related ul.products li.product .woocommerce-loop-product__title {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    min-height: 2.8em !important;
    max-height: none !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    color: #1a2e52 !important;
    font-family: Poppins, sans-serif !important;
    padding: 0 !important;
    margin-bottom: 6px !important;
}
/* Preis: immer unten per margin-top: auto */
.woocommerce .related.products ul.products li.product .price,
.woocommerce section.related ul.products li.product .price {
    margin-top: auto !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #c8102e !important;
    font-family: Poppins, sans-serif !important;
    padding-top: 8px !important;
    border-top: 1px solid #f0f0f0 !important;
}
/* Button: volle Breite, immer am Ende */
.woocommerce .related.products ul.products li.product a.button,
.woocommerce .related.products ul.products li.product .button,
.woocommerce section.related ul.products li.product a.button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-top: 8px !important;
    box-sizing: border-box !important;
    background: #c8102e !important;
    color: #fff !important;
    padding: 10px !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-family: Poppins, sans-serif !important;
    border: none !important;
    cursor: pointer !important;
    text-decoration: none !important;
}
.woocommerce .related.products ul.products li.product a.button:hover,
.woocommerce section.related ul.products li.product a.button:hover {
    background: #a00d24 !important;
}
/* Sterne und Merkliste ausblenden */
.woocommerce .related.products ul.products li.product .star-rating,
.woocommerce section.related ul.products li.product .star-rating { display: none !important; }

/* Related Products — 4 Spalten erzwingen, columns-3 überschreiben */
body .woocommerce .related.products ul.products.columns-3,
body .woocommerce .related ul.products.columns-3,
body .woocommerce section.related ul.products {
    grid-template-columns: repeat(4, 1fr) !important;
    display: grid !important;
}
body .woocommerce .upsells ul.products.columns-3,
body .woocommerce section.upsells ul.products {
    grid-template-columns: repeat(4, 1fr) !important;
    display: grid !important;
}

/* === SUBCAT TILES MIT ICON (redesign) === */
.bm-subcat-tiles {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 0 28px !important;
}
.bm-subcat-tile {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 10px !important;
    padding: 14px 16px !important;
    text-decoration: none !important;
    color: #1a2e52 !important;
    font-family: Poppins, sans-serif !important;
    transition: border-color 0.15s, box-shadow 0.15s, transform 0.12s !important;
    min-width: 110px !important;
    text-align: center !important;
    gap: 4px !important;
}
.bm-subcat-tile:hover {
    border-color: #c8102e !important;
    box-shadow: 0 3px 10px rgba(0,0,0,0.09) !important;
    transform: translateY(-2px) !important;
}
.bm-subcat-icon {
    font-size: 22px !important;
    display: block !important;
    margin-bottom: 4px !important;
}
.bm-subcat-name {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #1a2e52 !important;
    line-height: 1.3 !important;
}
.bm-subcat-count {
    font-size: 10px !important;
    color: #999 !important;
    margin-top: 2px !important;
}

/* ===== DEFINITIVER CARD HEIGHT FIX ===== */
/* Grid: stretch damit alle Cards gleich hoch */
body .woocommerce ul.products {
    align-items: stretch !important;
    display: grid !important;
    grid-auto-rows: 1fr !important;
}
/* Jede Karte als Flex-Column */
body .woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    box-sizing: border-box !important;
    padding: 12px !important;
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    transition: border-color 0.15s, box-shadow 0.15s !important;
    position: relative !important;
}
body .woocommerce ul.products li.product:hover {
    border-color: #c8102e !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1) !important;
}
/* Cover: feste Höhe */
body .woocommerce ul.products li.product img.attachment-woocommerce_thumbnail,
body .woocommerce ul.products li.product img {
    width: 100% !important;
    height: 190px !important;
    object-fit: contain !important;
    background: #f9f9f9 !important;
    border-radius: 4px !important;
    flex-shrink: 0 !important;
}
/* Titel: 2 Zeilen max */
body .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1a2e52 !important;
    line-height: 1.45 !important;
    height: 2.9em !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    font-family: Poppins, sans-serif !important;
    margin: 8px 0 0 !important;
    flex-shrink: 0 !important;
}
/* Beschreibung falls vorhanden: ausblenden für einheitliches Layout */
body .woocommerce ul.products li.product .bm-pcard-desc {
    display: none !important;
}
/* Preis: nach oben schieben via flex-grow auf einem Spacer */
body .woocommerce ul.products li.product .price {
    margin-top: auto !important;
    padding-top: 10px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #c8102e !important;
    font-family: Poppins, sans-serif !important;
    flex-shrink: 0 !important;
}
/* Button: volle Breite, unten */
body .woocommerce ul.products li.product a.button,
body .woocommerce ul.products li.product .add_to_cart_button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-top: 8px !important;
    padding: 9px 10px !important;
    box-sizing: border-box !important;
    background: #1a2e52 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 4px !important;
    border: none !important;
    font-family: Poppins, sans-serif !important;
    flex-shrink: 0 !important;
    opacity: 0 !important;
    transition: opacity 0.15s !important;
}
body .woocommerce ul.products li.product:hover a.button,
body .woocommerce ul.products li.product:hover .add_to_cart_button {
    opacity: 1 !important;
    background: #c8102e !important;
}

/* === GZD Loop Badges ausblenden (eigene Trust-Leiste vorhanden) === */
.woocommerce ul.products li.product .wc-gzd-additional-info,
.woocommerce ul.products li.product p.wc-gzd-additional-info,
.woocommerce ul.products li.product .woocommerce-gzd-additional-info,
.woocommerce-gzd-product-delivery-time-info,
.woocommerce-gzd-product-shipping-costs-info,
.wc-gzd-shipping-costs-info,
.tax-info,
.unit-price,
.wc-gzd-product-units {
    display: none !important;
}

/* === Related Products: flex-column, Button unter Preis === */
.single-product .related.products ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
}
.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
    flex-shrink: 0 !important;
}
.single-product .related.products ul.products li.product .price {
    flex-shrink: 0 !important;
    margin-top: auto !important;
}
.single-product .related.products ul.products li.product .button,
.single-product .related.products ul.products li.product .add_to_cart_button {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    margin-top: 8px !important;
}



/* ============================================================
   BM WOOCOMMERCE PAGES — Checkout, Cart, My Account, Thankyou
   CSS-Buster: t=38
   ============================================================ */

/* ---- GLOBALE FORM INPUTS auf WC-Seiten ---- */
.woocommerce-page input[type="text"],
.woocommerce-page input[type="email"],
.woocommerce-page input[type="tel"],
.woocommerce-page input[type="password"],
.woocommerce-page input[type="number"],
.woocommerce-page textarea,
.woocommerce-page select {
    font-family: Poppins, sans-serif !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 4px !important;
    padding: 10px 14px !important;
    background: #fff !important;
    color: #1a2e52 !important;
    font-size: 14px !important;
    transition: border-color 0.15s !important;
    box-shadow: none !important;
}
.woocommerce-page input:focus,
.woocommerce-page textarea:focus,
.woocommerce-page select:focus {
    border-color: #1a2e52 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(26,46,82,0.08) !important;
}

/* ============================================================
   AUFGABE 1: CHECKOUT (/kasse/)
   ============================================================ */

/* Checkout-Container aufräumen */
.woocommerce-checkout .entry-title { display: none !important; }

.woocommerce-checkout .woocommerce {
    padding: 0 !important;
}

/* 2-Spalten Layout */
@media (min-width: 922px) {
    .woocommerce-checkout form.checkout {
        display: flex !important;
        gap: 32px !important;
        align-items: flex-start !important;
    }
    .woocommerce-checkout form.checkout #customer_details {
        flex: 1 1 55% !important;
        min-width: 0 !important;
        float: none !important;
        width: auto !important;
        margin: 0 !important;
    }
    .woocommerce-checkout form.checkout #order_review_heading,
    .woocommerce-checkout form.checkout #order_review {
        flex: 1 1 40% !important;
        min-width: 0 !important;
        float: none !important;
        width: auto !important;
        margin: 0 !important;
    }
    /* Wrapper für rechte Spalte */
    .woocommerce-checkout form.checkout #order_review_heading {
        border: none !important;
        padding: 0 !important;
        background: transparent !important;
    }
}

/* Linke Spalte: Adressformular */
.woocommerce-checkout #customer_details {
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    padding: 28px !important;
}

/* Checkout-Überschriften auf Deutsch */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #billing_heading,
.woocommerce-checkout .col-1 h3 {
    font-family: Poppins, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    padding: 0 0 12px !important;
    margin: 0 0 20px !important;
    border-bottom: 2px solid #1a2e52 !important;
    text-transform: none !important;
}

/* Rechte Spalte: Bestellübersicht */
.woocommerce-checkout #order_review_heading {
    font-family: Poppins, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #fff !important;
    background: #1a2e52 !important;
    padding: 16px 20px !important;
    margin: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    border: none !important;
}

.woocommerce-checkout #order_review {
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-top: none !important;
    border-radius: 0 0 8px 8px !important;
    padding: 0 !important;
}

/* Bestelltabelle im Review */
.woocommerce-checkout #order_review table.shop_table {
    border: none !important;
    width: 100% !important;
    font-family: Poppins, sans-serif !important;
}
.woocommerce-checkout #order_review table.shop_table thead th {
    background: #f7f7f7 !important;
    color: #1a2e52 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 10px 20px !important;
    border: none !important;
}
.woocommerce-checkout #order_review table.shop_table tbody td {
    padding: 12px 20px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    font-size: 13px !important;
    color: #333 !important;
}
.woocommerce-checkout #order_review table.shop_table tfoot tr td,
.woocommerce-checkout #order_review table.shop_table tfoot tr th {
    padding: 10px 20px !important;
    font-size: 13px !important;
    border-top: 1px solid #e0e0e0 !important;
}
.woocommerce-checkout #order_review table.shop_table tfoot tr.order-total th,
.woocommerce-checkout #order_review table.shop_table tfoot tr.order-total td {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    padding: 16px 20px !important;
    border-top: 2px solid #1a2e52 !important;
}

/* Zahlungsmethode-Box */
.woocommerce-checkout #payment {
    background: #f7f7f7 !important;
    border-radius: 4px !important;
    border: 1px solid #e0e0e0 !important;
    padding: 16px 20px !important;
    margin: 0 !important;
}
.woocommerce-checkout #payment .wc_payment_methods {
    padding: 0 !important;
    margin: 0 0 16px !important;
    border: none !important;
}
.woocommerce-checkout #payment .payment_method_bacs label,
.woocommerce-checkout #payment ul.payment_methods li label {
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1a2e52 !important;
}
.woocommerce-checkout #payment div.payment_box {
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    color: #666 !important;
    padding: 12px 16px !important;
    margin: 8px 0 0 !important;
}
.woocommerce-checkout #payment div.payment_box::before { display: none !important; }

/* "Bestellung aufgeben" Button */
.woocommerce-checkout #place_order,
.woocommerce #payment #place_order {
    background: #c8102e !important;
    background-image: none !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 16px 20px !important;
    width: 100% !important;
    display: block !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
    box-shadow: 0 2px 8px rgba(200,16,46,0.25) !important;
    margin-top: 16px !important;
}
.woocommerce-checkout #place_order:hover,
.woocommerce #payment #place_order:hover {
    background: #a00d24 !important;
}

/* Trust Badges unter dem Button */
.woocommerce-checkout #payment::after {
    content: "🔒 SSL-verschlüsselt · ✓ Sichere Zahlung · 🛡 Käuferschutz";
    display: block !important;
    text-align: center !important;
    font-family: Poppins, sans-serif !important;
    font-size: 11px !important;
    color: #888 !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid #e0e0e0 !important;
}

/* Astra Checkout Overrides */
.woocommerce-checkout #customer_details h3:not(.elementor-widget-woocommerce-checkout-page h3) {
    padding: 0 0 12px !important;
    margin: 0 0 20px !important;
    border-bottom: 2px solid #1a2e52 !important;
}
form #order_review_heading:not(.elementor-widget-woocommerce-checkout-page #order_review_heading) {
    border: none !important;
    padding: 16px 20px !important;
    margin: 0 !important;
    background: #1a2e52 !important;
    border-radius: 8px 8px 0 0 !important;
    color: #fff !important;
}
form #order_review:not(.elementor-widget-woocommerce-checkout-page #order_review) {
    border: 1px solid #e0e0e0 !important;
    border-top: none !important;
    border-radius: 0 0 8px 8px !important;
    padding: 0 !important;
}

/* Checkout Labels */
.woocommerce-checkout .form-row label {
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #1a2e52 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    margin-bottom: 4px !important;
}

/* Pflichtfeld-Sternchen weniger prominent */
.woocommerce-checkout .required { color: #c8102e !important; }

/* Bestellkommentar */
.woocommerce-checkout .woocommerce-additional-fields h3 {
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    margin: 20px 0 10px !important;
    padding: 0 !important;
    border: none !important;
}

/* Responsive Checkout */
@media (max-width: 921px) {
    .woocommerce-checkout form.checkout {
        flex-direction: column !important;
    }
    .woocommerce-checkout #customer_details,
    .woocommerce-checkout #order_review_heading,
    .woocommerce-checkout #order_review {
        width: 100% !important;
    }
}

/* ============================================================
   AUFGABE 2: WARENKORB (/warenkorb/)
   ============================================================ */

.woocommerce-cart .entry-title { display: none !important; }

/* Cart Tabelle */
.woocommerce-cart table.cart {
    border-collapse: collapse !important;
    width: 100% !important;
    font-family: Poppins, sans-serif !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

/* Navy Header */
.woocommerce-cart table.cart thead th {
    background: #1a2e52 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 16px !important;
    border: none !important;
}

/* Cart Zeilen */
.woocommerce-cart table.cart tbody tr {
    border-bottom: 1px solid #f0f0f0 !important;
    transition: background 0.1s !important;
}
.woocommerce-cart table.cart tbody tr:hover {
    background: #fafafa !important;
}
.woocommerce-cart table.cart tbody td {
    padding: 16px !important;
    border: none !important;
    vertical-align: middle !important;
    font-size: 14px !important;
    color: #333 !important;
}

/* Produktbild links */
.woocommerce-cart table.cart td.product-thumbnail {
    width: 80px !important;
    padding: 12px 8px 12px 16px !important;
}
.woocommerce-cart table.cart td.product-thumbnail img {
    width: 70px !important;
    height: 90px !important;
    object-fit: contain !important;
    border: 1px solid #f0f0f0 !important;
    border-radius: 4px !important;
    background: #f9f9f9 !important;
}

/* Produktname */
.woocommerce-cart table.cart td.product-name a {
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1a2e52 !important;
    text-decoration: none !important;
}
.woocommerce-cart table.cart td.product-name a:hover {
    color: #c8102e !important;
}

/* Preis in Cart */
.woocommerce-cart table.cart td.product-price,
.woocommerce-cart table.cart td.product-subtotal {
    font-weight: 700 !important;
    color: #c8102e !important;
    font-size: 15px !important;
}

/* Entfernen-Button */
.woocommerce-cart table.cart td.product-remove a.remove {
    color: #ccc !important;
    font-size: 18px !important;
    transition: color 0.15s !important;
}
.woocommerce-cart table.cart td.product-remove a.remove:hover {
    color: #c8102e !important;
    background: transparent !important;
}

/* Cart Actions */
.woocommerce-cart table.cart td.actions {
    background: #f7f7f7 !important;
    padding: 16px !important;
}

/* Coupon-Feld dezenter */
.woocommerce-cart table.cart td.actions .coupon {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.woocommerce-cart table.cart td.actions .coupon label {
    display: none !important;
}
.woocommerce-cart table.cart td.actions .coupon input#coupon_code {
    width: 180px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    font-family: Poppins, sans-serif !important;
    background: #fff !important;
    color: #666 !important;
}
.woocommerce-cart table.cart td.actions .coupon input#coupon_code::placeholder {
    color: #aaa !important;
    font-size: 12px !important;
}
.woocommerce-cart table.cart td.actions .coupon .button {
    padding: 9px 16px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    background: #666 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    font-family: Poppins, sans-serif !important;
}
.woocommerce-cart table.cart td.actions .coupon .button:hover {
    background: #444 !important;
}

/* "Warenkorb aktualisieren" Button dezent */
.woocommerce-cart table.cart td.actions [name="update_cart"] {
    padding: 9px 16px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    background: transparent !important;
    color: #999 !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    font-family: Poppins, sans-serif !important;
    transition: all 0.15s !important;
    float: right !important;
}
.woocommerce-cart table.cart td.actions [name="update_cart"]:not([disabled]):hover {
    background: #f0f0f0 !important;
    color: #666 !important;
}

/* Cart Collaterals (rechte Seite) */
.woocommerce-cart .cart-collaterals {
    margin-top: 24px !important;
}

/* Versandkostenrechner prominent */
.woocommerce-cart .cart-collaterals .cart_totals {
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}
.woocommerce-cart .cart-collaterals .cart_totals h2 {
    background: #1a2e52 !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 20px !important;
    margin: 0 !important;
}
.woocommerce-cart .cart-collaterals .cart_totals table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-family: Poppins, sans-serif !important;
}
.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table td {
    padding: 12px 20px !important;
    font-size: 14px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    color: #333 !important;
}
.woocommerce-cart .cart-collaterals .cart_totals table th {
    font-weight: 600 !important;
    color: #1a2e52 !important;
    width: 40% !important;
}
.woocommerce-cart .cart-collaterals .cart_totals table tr.order-total th,
.woocommerce-cart .cart-collaterals .cart_totals table tr.order-total td {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    border-top: 2px solid #1a2e52 !important;
    border-bottom: none !important;
}

/* Kostenlos-Versand prominent */
.woocommerce-cart .cart-collaterals .cart_totals table .shipping td::after {
    content: " · ✓ Kostenloser Versand ab 25 €" !important;
    display: block !important;
    font-size: 11px !important;
    color: #2e7d32 !important;
    font-weight: 600 !important;
    margin-top: 4px !important;
}

/* Versandkostenrechner */
.woocommerce-cart .shipping-calculator-button {
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    color: #1a2e52 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}
.woocommerce-cart .shipping-calculator-button:hover {
    color: #c8102e !important;
}
.woocommerce-cart .woocommerce-shipping-calculator {
    margin-top: 12px !important;
    padding: 0 20px 16px !important;
}

/* "Zur Kasse" Button groß, rot */
.woocommerce-cart .wc-proceed-to-checkout {
    padding: 20px !important;
    background: #f7f7f7 !important;
    border-top: 1px solid #e0e0e0 !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    background: #c8102e !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    padding: 16px 20px !important;
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
    box-shadow: 0 2px 8px rgba(200,16,46,0.25) !important;
    text-decoration: none !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
    background: #a00d24 !important;
}

/* Kostenloser Versand Banner über "Zur Kasse" */
.woocommerce-cart .wc-proceed-to-checkout::before {
    content: "🚚 Kostenloser Versand innerhalb Deutschlands!";
    display: block !important;
    text-align: center !important;
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    color: #2e7d32 !important;
    font-weight: 600 !important;
    background: #e8f5e9 !important;
    border: 1px solid #a5d6a7 !important;
    border-radius: 4px !important;
    padding: 8px 12px !important;
    margin-bottom: 12px !important;
}

/* Responsive Cart */
@media (max-width: 767px) {
    .woocommerce-cart table.cart td.actions .coupon {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    .woocommerce-cart table.cart td.actions .coupon input#coupon_code {
        width: 100% !important;
    }
}

/* ============================================================
   AUFGABE 3: MEIN KONTO (/mein-konto/)
   ============================================================ */

.woocommerce-account .entry-title { display: none !important; }

/* My Account Layout */
.woocommerce-MyAccount-navigation {
    background: #1a2e52 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
}

/* Navigation Header */
.woocommerce-MyAccount-navigation::before {
    content: "Mein Konto";
    display: block !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: rgba(255,255,255,0.5) !important;
    padding: 16px 20px 8px !important;
}

/* Nav Links */
.woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
}
.woocommerce-MyAccount-navigation ul li {
    margin: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: none !important;
}
.woocommerce-MyAccount-navigation ul li a {
    display: block !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: rgba(255,255,255,0.8) !important;
    padding: 12px 20px !important;
    text-decoration: none !important;
    transition: background 0.15s, color 0.15s !important;
    position: relative !important;
}
.woocommerce-MyAccount-navigation ul li a:hover {
    background: rgba(255,255,255,0.08) !important;
    color: #fff !important;
}

/* Aktiver Link mit rotem Indikator */
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a {
    background: rgba(255,255,255,0.1) !important;
    color: #fff !important;
    font-weight: 700 !important;
}
.woocommerce-MyAccount-navigation ul li.is-active a::before,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 4px !important;
    height: 60% !important;
    background: #c8102e !important;
    border-radius: 0 2px 2px 0 !important;
}

/* Abmelden-Link separat hervorheben */
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
    color: rgba(255,150,150,0.8) !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
    margin-top: 4px !important;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    color: #ff6b6b !important;
    background: rgba(200,16,46,0.15) !important;
}

/* Content Area */
.woocommerce-MyAccount-content {
    font-family: Poppins, sans-serif !important;
}

/* Dashboard Übersicht */
.woocommerce-account .woocommerce-MyAccount-content p {
    font-size: 14px !important;
    color: #555 !important;
    line-height: 1.7 !important;
}
.woocommerce-account .woocommerce-MyAccount-content strong {
    color: #1a2e52 !important;
}
.woocommerce-account .woocommerce-MyAccount-content a {
    color: #1a2e52 !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
}
.woocommerce-account .woocommerce-MyAccount-content a:hover {
    color: #c8102e !important;
}

/* Bestellungen-Tabelle */
.woocommerce-account .woocommerce-orders-table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}
.woocommerce-account .woocommerce-orders-table thead th {
    background: #1a2e52 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 16px !important;
}
.woocommerce-account .woocommerce-orders-table tbody tr {
    border-bottom: 1px solid #f0f0f0 !important;
    transition: background 0.1s !important;
}
.woocommerce-account .woocommerce-orders-table tbody tr:hover {
    background: #fafafa !important;
}
.woocommerce-account .woocommerce-orders-table tbody td {
    padding: 12px 16px !important;
    color: #333 !important;
}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a {
    background: #1a2e52 !important;
    color: #fff !important;
    padding: 6px 12px !important;
    border-radius: 3px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
}
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a:hover {
    background: #c8102e !important;
}

/* Order Status Badges */
.woocommerce-account .woocommerce-orders-table .wc-item-meta {
    font-size: 11px !important;
}
.woocommerce-account mark.order-status {
    background: #e8f5e9 !important;
    color: #2e7d32 !important;
    padding: 3px 8px !important;
    border-radius: 12px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
}
.woocommerce-account mark.order-status.status-cancelled,
.woocommerce-account mark.order-status.status-refunded {
    background: #ffebee !important;
    color: #c62828 !important;
}
.woocommerce-account mark.order-status.status-on-hold,
.woocommerce-account mark.order-status.status-pending {
    background: #fff3e0 !important;
    color: #e65100 !important;
}

/* Formular-Buttons in My Account */
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"] {
    background: #1a2e52 !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 11px 22px !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
}
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:hover {
    background: #c8102e !important;
}

/* Desktop: Sidebar + Content nebeneinander */
@media (min-width: 922px) {
    .woocommerce-account .woocommerce {
        display: flex !important;
        gap: 28px !important;
        align-items: flex-start !important;
    }
    .woocommerce-MyAccount-navigation {
        width: 220px !important;
        flex-shrink: 0 !important;
    }
    .woocommerce-MyAccount-content {
        flex: 1 !important;
        min-width: 0 !important;
        padding: 24px !important;
        background: #fff !important;
        border: 1px solid #e0e0e0 !important;
        border-radius: 8px !important;
    }
}
@media (max-width: 921px) {
    .woocommerce-MyAccount-content {
        margin-top: 20px !important;
        padding: 16px !important;
    }
}

/* ============================================================
   AUFGABE 4: BESTELLBESTÄTIGUNG / DANKE-SEITE
   ============================================================ */

.woocommerce-order-received .entry-title { display: none !important; }

/* Danke-Nachricht */
.woocommerce-thankyou-order-received,
.woocommerce-order .woocommerce-thankyou-order-received {
    font-family: Poppins, sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    text-align: center !important;
    padding: 32px 24px !important;
    background: linear-gradient(135deg, #1a2e52 0%, #2a4070 100%) !important;
    color: #fff !important;
    border-radius: 8px !important;
    margin-bottom: 28px !important;
    display: block !important;
}

/* Bestellnummer prominent */
.woocommerce-order-received .woocommerce-order-overview {
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    margin-bottom: 28px !important;
    overflow: hidden !important;
    list-style: none !important;
    padding: 0 !important;
}
.woocommerce-order-received .woocommerce-order-overview li {
    flex: 1 1 auto !important;
    padding: 20px 24px !important;
    border-right: 1px solid #f0f0f0 !important;
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    color: #888 !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
}
.woocommerce-order-received .woocommerce-order-overview li:last-child {
    border-right: none !important;
}
.woocommerce-order-received .woocommerce-order-overview li strong {
    display: block !important;
    font-size: 16px !important;
    color: #1a2e52 !important;
    font-weight: 700 !important;
    margin-top: 4px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Bestelldetails-Tabelle */
.woocommerce-order-received .woocommerce-order-details,
.woocommerce-order-received .woocommerce-customer-details {
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    margin-bottom: 20px !important;
}
.woocommerce-order-received .woocommerce-order-details h2,
.woocommerce-order-received .woocommerce-customer-details h2,
.woocommerce-order-received .woocommerce-order-details__title,
.woocommerce-order-received .woocommerce-column__title {
    background: #f7f7f7 !important;
    color: #1a2e52 !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 14px 20px !important;
    margin: 0 !important;
    border-bottom: 1px solid #e0e0e0 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}
.woocommerce-order-received .woocommerce-order-details table,
.woocommerce-order-received .woocommerce-customer-details table {
    width: 100% !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    border-collapse: collapse !important;
}
.woocommerce-order-received .woocommerce-order-details table td,
.woocommerce-order-received .woocommerce-order-details table th {
    padding: 12px 20px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    color: #333 !important;
}
.woocommerce-order-received .woocommerce-order-details table tfoot tr.order-total th,
.woocommerce-order-received .woocommerce-order-details table tfoot tr.order-total td {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    border-top: 2px solid #1a2e52 !important;
    border-bottom: none !important;
}

/* "Weiter einkaufen" Button */
.woocommerce-order-received .woocommerce-order .order-again,
.woocommerce-order-received .return-to-shop {
    text-align: center !important;
    padding: 20px 0 !important;
}
.woocommerce-order-received .woocommerce-order .order-again a,
.woocommerce-order-received .return-to-shop a {
    background: #1a2e52 !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 28px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: background 0.15s !important;
}
.woocommerce-order-received .woocommerce-order .order-again a:hover,
.woocommerce-order-received .return-to-shop a:hover {
    background: #c8102e !important;
}

/* "Weiter einkaufen" Link nach Order hinzufügen via CSS before */
.woocommerce-order-received .woocommerce-order::after {
    content: "";
    display: block !important;
}

/* Responsiv Thankyou */
@media (max-width: 767px) {
    .woocommerce-order-received .woocommerce-order-overview {
        flex-direction: column !important;
    }
    .woocommerce-order-received .woocommerce-order-overview li {
        border-right: none !important;
        border-bottom: 1px solid #f0f0f0 !important;
    }
}

/* ============================================================
   MINI-CART / WARENKORB-SIDEBAR (Drawer)
   ============================================================ */

.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart__total {
    font-family: Poppins, sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
}
.astra-cart-drawer .woocommerce-mini-cart__buttons a.checkout {
    background: #c8102e !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
}
.astra-cart-drawer .woocommerce-mini-cart__buttons a.checkout:hover {
    background: #a00d24 !important;
}

/* ============================================================
   ALLGEMEINE WC-NOTICES
   ============================================================ */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    border-radius: 4px !important;
}
.woocommerce-message {
    background: #e8f5e9 !important;
    border-top-color: #2e7d32 !important;
    color: #1b5e20 !important;
}
.woocommerce-error {
    background: #ffebee !important;
    border-top-color: #c62828 !important;
    color: #c62828 !important;
}
.woocommerce-info {
    background: #e3f2fd !important;
    border-top-color: #1565c0 !important;
    color: #0d47a1 !important;
}


/* ============================================================
   FIX: Mein Konto Navigation - Astra Override
   ============================================================ */
body.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    background: #1a2e52 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    background: transparent !important;
    color: rgba(255,255,255,0.85) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background: rgba(255,255,255,0.1) !important;
    color: #fff !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a {
    background: rgba(255,255,255,0.15) !important;
    color: #fff !important;
    font-weight: 700 !important;
}

/* Fix: Kasse-Button Navy statt Blau */
body .woocommerce .checkout-button,
body .woocommerce #payment #place_order,
body .woocommerce-checkout #payment #place_order {
    background: #c8102e !important;
    border-color: #c8102e !important;
    color: #fff !important;
}
body .woocommerce .checkout-button:hover,
body .woocommerce #payment #place_order:hover {
    background: #a50d24 !important;
    border-color: #a50d24 !important;
}


/* ============================================================
   MOBILE QA FIXES — 2026-04-15 (t=42)
   ============================================================ */

/* --- 1. Topbar auf Mobile ausblenden (spart Platz) --- */
@media (max-width: 768px) {
    .bm-hdr-topbar { display: none !important; }
}

/* --- 2. Header Container auf Mobile: Logo + Cart in einer Zeile --- */
@media (max-width: 768px) {
    #bm-header .bm-hdr-main .bm-hdr-container {
        height: auto !important;
        min-height: 56px !important;
        padding: 8px 12px !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
    }
    #bm-header .bm-hdr-nav { display: none !important; }
    #bm-header .bm-hdr-portofrei { display: none !important; }
}

/* --- 3. Produktdetailseite: Galerie auf Mobile volle Breite --- */
@media (max-width: 768px) {
    .single-product div.product {
        flex-direction: column !important;
        padding: 12px !important;
    }
    .single-product .woocommerce-product-gallery {
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 16px !important;
    }
    .single-product .woocommerce-product-gallery__image img {
        max-height: 300px !important;
        object-fit: contain !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        display: block !important;
    }
}

/* --- 4. Trust-Badges auf Mobile: einzeln untereinander --- */
@media (max-width: 480px) {
    .bm-trust-badges {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 4px !important;
    }
    .bm-trust-sep { display: none !important; }
}

/* --- 5. Footer Trust-Bar auf Mobile: items stacked --- */
@media (max-width: 480px) {
    body .bm-footer-trust-grid {
        flex-direction: column !important;
        gap: 10px !important;
    }
    body .bm-trust-item {
        flex: 0 0 auto !important;
        width: 100% !important;
    }
}

/* --- 6. Footer Grid: 1 Spalte unter 480px sichergestellt --- */
@media (max-width: 480px) {
    body .bm-footer-grid,
    body footer.bm-footer .bm-footer-grid,
    body .bm-footer .bm-footer-main .bm-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        padding: 24px 16px !important;
    }
}

/* --- 7. Suchleiste auf Mobile volle Breite --- */
@media (max-width: 768px) {
    #bm-header .bm-hdr-search { display: block !important; }
    #bm-header .bm-hdr-search-inner {
        height: 44px !important;
        padding: 0 8px !important;
    }
    #bm-header .bm-hdr-allcat {
        min-width: 110px !important;
        font-size: 11px !important;
        padding: 0 10px !important;
    }
}

/* --- 8. Warenkorb-Button auf Mobile --- */
@media (max-width: 480px) {
    #bm-header .bm-hdr-cart {
        min-width: 90px !important;
        padding: 0 10px !important;
    }
    #bm-header .bm-hdr-cart strong { font-size: 11px !important; }
}

/* ========== AUFGABE 1: Mein Konto — Login/Register Form ========== */
.woocommerce-account .woocommerce {
    max-width: 900px;
    margin: 40px auto;
    padding: 0 20px;
}

.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
    background: white;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 32px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.woocommerce-account .woocommerce-form__label {
    font-weight: 600;
    color: #333;
    font-size: 13px;
}

.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"] {
    border: 1px solid #d0d0d0;
    border-radius: 6px;
    padding: 10px 14px;
    width: 100%;
    font-size: 14px;
    transition: border-color 0.2s;
}

.woocommerce-account input:focus {
    border-color: #1a2e52;
    outline: none;
    box-shadow: 0 0 0 3px rgba(26,46,82,0.1);
}

.woocommerce-account .woocommerce-Button {
    background: #c8102e !important;
    color: white !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 12px 28px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: background 0.2s !important;
}

.woocommerce-account .woocommerce-Button:hover {
    background: #a00d24 !important;
}

/* ========== AUFGABE 2: My Account Sidebar Icons ========== */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="orders"]::before {
    content: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="downloads"]::before {
    content: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="edit-address"]::before {
    content: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="edit-account"]::before {
    content: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="customer-logout"]::before {
    content: none;
}

/* ========== AUFGABE 3: Bestellhistorie-Tabelle Styling ========== */
.woocommerce-account .woocommerce-orders-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.woocommerce-account .woocommerce-orders-table th {
    background: #1a2e52;
    color: white;
    padding: 10px 14px;
    text-align: left;
    font-weight: 600;
}

.woocommerce-account .woocommerce-orders-table td {
    padding: 10px 14px;
    border-bottom: 1px solid #e0e0e0;
}

.woocommerce-account .woocommerce-orders-table tr:hover td {
    background: #f7f7f7;
}

/* --- 9. Mein Konto Navigation auf Mobile --- */
@media (max-width: 768px) {
    .woocommerce-account .woocommerce-MyAccount-navigation {
        width: 100% !important;
        margin-bottom: 20px !important;
    }
    .woocommerce-account .woocommerce-MyAccount-content {
        width: 100% !important;
        padding: 0 !important;
    }
    .woocommerce-account .entry-content > .woocommerce {
        flex-direction: column !important;
    }
}

/* --- 10. Related Products auf Mobile: 2 Spalten --- */
@media (max-width: 480px) {
    .single-product .related.products ul.products,
    .single-product .upsells.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
}

/* ========== PRODUKTBEWERTUNGEN ========== */

/* Sternebewertungen auf Produktkarten zeigen */
.bm-pcard .star-rating,
ul.products li.product .star-rating {
    display: block !important;
    font-size: 12px;
    margin: 4px 0;
    color: #f5a623;
}

.star-rating span::before {
    color: #f5a623;
}

/* Bewertungsanzahl */
.bm-pcard .woocommerce-review-link {
    font-size: 11px;
    color: #666;
}

/* Review Form */
#review_form .comment-form-rating label {
    font-weight: 600;
    color: #1a2e52;
}

#review_form .stars a {
    color: #f5a623;
    font-size: 20px;
}

#review_form .comment-form-comment textarea {
    border: 1px solid #d0d0d0;
    border-radius: 6px;
    padding: 10px;
}

#review_form #submit {
    background: #c8102e !important;
    color: white !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 10px 24px !important;
    font-weight: 700 !important;
}

/* ========== PREIS-FILTER (AUFGABE 3) ========== */
.bm-sidebar-price-filter {
    margin-bottom: 20px;
    padding: 12px;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
}

.bm-sidebar-price-filter .bm-sidebar-heading {
    font-size: 14px;
    font-weight: 700;
    color: #1a2e52;
    margin: 0 0 12px 0;
    padding: 0;
}

.bm-sidebar-price-filter .price_slider_wrapper {
    margin-top: 8px;
}

.bm-sidebar-price-filter .ui-slider {
    border: 1px solid #ddd;
    background: #f5f5f5;
    border-radius: 4px;
    height: 6px;
}

.bm-sidebar-price-filter .ui-slider-range {
    background: #c8102e;
    border-radius: 4px;
}

.bm-sidebar-price-filter .ui-slider-handle {
    background: #1a2e52;
    border: 2px solid white !important;
    border-radius: 50%;
    width: 16px !important;
    height: 16px !important;
    top: -5px !important;
    outline: none;
}

.bm-sidebar-price-filter .ui-slider-handle:hover {
    background: #0f1d35;
}

.bm-sidebar-price-filter .price_slider_amount {
    margin-top: 10px;
}

.bm-sidebar-price-filter .price_label {
    font-size: 12px;
    color: #666;
}

.bm-sidebar-price-filter button {
    background: #c8102e !important;
    color: white !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 6px 12px !important;
    margin-top: 8px;
    font-size: 12px !important;
    cursor: pointer;
}

.bm-sidebar-price-filter button:hover {
    background: #9d0a23 !important;
}

/* ========== SORTIEREN-DROPDOWN (AUFGABE 4) ========== */
.woocommerce-ordering select,
.bm-sort-form select {
    border: 1px solid #1a2e52 !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    color: #1a2e52 !important;
    font-size: 13px !important;
    background: white !important;
}

.woocommerce-ordering select:focus,
.bm-sort-form select:focus {
    outline: none;
    border-color: #c8102e !important;
    box-shadow: 0 0 0 3px rgba(200, 16, 46, 0.1);
}


/* ════════════════════════════════════════════════════════════════════════
   SPRINT 13: CHECKOUT EXTRAS (2026-04-15)
   Fortschrittsanzeige, Trust-Element, Cart Upsell
════════════════════════════════════════════════════════════════════════ */

/* ── Checkout Fortschrittsanzeige (oben) ── */
.bm-checkout-progress {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin: 0 0 24px;
    padding: 16px 0;
    border-bottom: 1px solid #e0e0e0;
}

.bm-checkout-step {
    display: flex;
    align-items: center;
    font-size: 13px;
    color: #999;
    font-family: Poppins, sans-serif;
}

.bm-checkout-step.active {
    color: #1a2e52;
    font-weight: 700;
}

.bm-checkout-step.done {
    color: #2e7d32;
}

.bm-checkout-step span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #e0e0e0;
    color: white;
    font-size: 12px;
    margin-right: 6px;
    font-weight: 700;
}

.bm-checkout-step.active span {
    background: #1a2e52;
}

.bm-checkout-step.done span {
    background: #2e7d32;
}

.bm-checkout-divider {
    width: 40px;
    height: 1px;
    background: #e0e0e0;
}

/* ── Checkout Trust-Element (unter Bestellbutton) ── */
.bm-checkout-trust {
    background: #f0faf0;
    border: 1px solid #c3e6c3;
    border-radius: 6px;
    padding: 10px 14px;
    margin: 12px 0;
    font-size: 13px;
    color: #2e7d32;
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: Poppins, sans-serif;
    font-weight: 500;
}

/* ── Cart Upsell: "Das könnte Sie auch interessieren" ── */
.bm-cart-upsell {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px 20px;
    margin: 24px 0;
    font-family: Poppins, sans-serif;
}

.bm-cart-upsell h3 {
    font-size: 16px;
    color: #1a2e52;
    margin: 24px 0 12px;
    font-weight: 700;
}

.bm-cart-upsell > div {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.bm-cart-upsell > div > div {
    background: #f7f7f7;
    border-radius: 6px;
    padding: 10px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13px;
}

.bm-cart-upsell > div > div img {
    flex-shrink: 0;
    width: 60px;
    height: 80px;
    object-fit: cover;
    border-radius: 4px;
}

.bm-cart-upsell > div > div > div {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.bm-cart-upsell > div > div div:first-child {
    font-size: 12px;
    font-weight: 700;
    color: #333;
    margin-bottom: 4px;
    line-height: 1.3;
}

.bm-cart-upsell > div > div div:nth-child(2) {
    font-size: 13px;
    color: #c8102e;
    font-weight: 700;
    margin-bottom: 4px;
}

.bm-cart-upsell > div > div a {
    font-size: 11px;
    color: #1a2e52;
    text-decoration: none;
    font-weight: 600;
}

.bm-cart-upsell > div > div a:hover {
    color: #c8102e;
}

/* Mobile: 1 Spalte */
@media (max-width: 768px) {
    .bm-cart-upsell > div {
        grid-template-columns: 1fr;
    }
}

/* ════════════════════════════════════════════════════════════════════════ */

/* ────────────────────────────────────────────
   AUFGABE 3: Sale-Badge und Produktkarten-Verbesserungen (t=56)
──────────────────────────────────────────── */

/* Sale Badge (WooCommerce) */
.woocommerce span.onsale {
    background-color: #c8102e !important;
    border-radius: 3px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 3px 8px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    top: 8px !important;
    left: 8px !important;
    right: auto !important;
}

/* Produktkarte Hover */
.bm-pcard:hover {
    box-shadow: 0 8px 24px rgba(26,46,82,0.15);
    transform: translateY(-2px);
    transition: all 0.2s ease;
}

/* Produktkarten-Titel */
.bm-pcard .woocommerce-loop-product__title {
    font-size: 14px;
    font-weight: 600;
    color: #1a2e52;
    line-height: 1.3;
}

/* Preis */
.bm-pcard .price {
    color: #c8102e !important;
    font-weight: 700;
    font-size: 16px;
}
.bm-pcard .price del {
    color: #999 !important;
    font-size: 13px;
    font-weight: 400;
}

/* ────────────────────────────────────────────
   AUFGABE 4: Mobile-Menü-Button Fix
──────────────────────────────────────────── */
@media (max-width: 768px) {
    .bm-nav-toggle {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        background: #1a2e52;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        color: white;
        font-size: 20px;
    }
}

/* ════════════════════════════════════════════════════════════════════════
   Phase 5 Mobile Fixes — 15.04.2026
   Ergänzungen: Archive-Banner + Button Touch-Targets
════════════════════════════════════════════════════════════════════════ */

/* --- Archive Banner auf Mobile: Schrift verkleinern, Padding reduzieren --- */
@media (max-width: 768px) {
    .bm-archive-title {
        font-size: 1.5rem !important;
        letter-spacing: 0.5px !important;
    }
    .bm-banner-content {
        padding: 18px 20px 18px 28px !important;
    }
    .bm-archive-sub {
        font-size: 0.80rem !important;
    }
}
@media (max-width: 480px) {
    .bm-archive-title {
        font-size: 1.25rem !important;
        letter-spacing: 0 !important;
    }
    .bm-banner-content {
        padding: 14px 14px 14px 20px !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
    }
    .bm-banner-count {
        align-self: auto !important;
    }
}

/* --- Touch-Targets: WooCommerce Add-to-Cart Buttons min 44px --- */
@media (max-width: 768px) {
    .woocommerce ul.products li.product a.button,
    .woocommerce ul.products li.product .add_to_cart_button,
    .woocommerce-page a.button,
    .woocommerce-page button.button {
        min-height: 44px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    /* Mobile Menü-Button auf 44px */
    .bm-nav-toggle {
        width: 44px !important;
        height: 44px !important;
    }
}

/* ── KATEGORIE-SEITEN: Grid auf 4 Spalten, kein extra Padding ── */
.tax-product_cat .bm-cat-main ul.products,
.tax-product_cat ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px !important;
}
.tax-product_cat .ast-woocommerce-container {
    background: transparent !important;
    padding: 0 !important;
}
@media (max-width: 1100px) {
    .tax-product_cat .bm-cat-main ul.products,
    .tax-product_cat ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 700px) {
    .tax-product_cat .bm-cat-main ul.products,
    .tax-product_cat ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}

/* === GLOBAL PCARD IMAGE FIX (Startseite + alle Seiten) === */
/* SVG-Cover auf Startseite und überall wo .tax-product_cat nicht greift */
.bm-pcard-cover {
    height: 180px !important;
    width: auto !important;
    max-width: 100% !important;
    display: block !important;
    margin: 0 auto !important;
    object-fit: contain !important;
}
.bm-pcard-imgwrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* ══════════════════════════════════════════════════════════════════
   BM KATEGORIE-SEITEN FIX — 2026-04-15
   Fixes: K-1 (erste Karte), K-2/K-3 (Button sichtbar), K-4 (4 Spalten)
   ══════════════════════════════════════════════════════════════════ */

/* ── K-1: Erste Produktkarte — gleiches Layout wie alle anderen ── */
/* Astra fügt .ast-article-post margin-bottom hinzu → auf Kat-Seiten neutralisieren */
body.tax-product_cat ul.products li.product.ast-article-post,
body.tax-product_cat ul.products li.bm-pcard-li {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    border-bottom: none !important;
}

/* Astra overflow auf li-inner reset */
body.tax-product_cat ul.products li.product .ast-article-inner,
body.tax-product_cat ul.products li.product .bm-pcard {
    overflow: visible !important;
    border-radius: 0 !important;
}

/* li.product overflow MUSS visible sein damit Button (absolute, bottom:0) sichtbar ist */
body.tax-product_cat ul.products li.product {
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: stretch !important;
}

/* ── K-2/K-3: Button immer sichtbar auf Kategorie-Seiten ── */
/* Statt nur bei Hover — immer sichtbar */
body.tax-product_cat .bm-pcard-btn {
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
    display: block !important;
    position: static !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
    border-radius: 0 0 3px 3px !important;
}

/* ── K-4: Grid 4 Spalten — stabiler Fix gegen alle !important-Regeln ── */
body.tax-product_cat .bm-cat-main ul.products,
body.tax-product_cat ul.products.columns-4,
body.tax-product_cat ul.products.columns-3,
body.tax-product_cat ul.products.columns-5,
body.tax-product_cat ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 18px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 1100px) {
    body.tax-product_cat .bm-cat-main ul.products,
    body.tax-product_cat ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 700px) {
    body.tax-product_cat .bm-cat-main ul.products,
    body.tax-product_cat ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* ── bm-pcard Grundlayout sichern ── */
body.tax-product_cat .bm-pcard {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    background: #fff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 8px !important;
    overflow: visible !important;
    position: relative !important;
}

body.tax-product_cat .bm-pcard-imgwrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 196px !important;
    background: #fff !important;
    border-radius: 8px 8px 0 0 !important;
    border-bottom: 1px solid #efefef !important;
    overflow: hidden !important;
    padding: 8px !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
}

body.tax-product_cat .bm-pcard-cover {
    height: 170px !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 180px !important;
    object-fit: contain !important;
    display: block !important;
}

body.tax-product_cat .bm-pcard-info {
    padding: 8px 10px 10px !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    gap: 3px !important;
}

body.tax-product_cat .bm-pcard-title {
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    color: #1a2e52 !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: 1.35 !important;
}

body.tax-product_cat .bm-pcard-price {
    color: #c8102e !important;
    font-weight: 700 !important;
    font-size: 0.9rem !important;
    margin-top: auto !important;
    padding: 4px 0 6px !important;
}

/* ============================================================
   BUTTON-OVERRIDE 16.04.2026 — Olik-Feedback: besser lesbar
   ============================================================ */

/* "In den Warenkorb" — immer sichtbar, größer, lesbarer */
.bm-pcard-btn {
    display: block !important;
    background: #1a2e52 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 0.78rem !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    padding: 9px 10px !important;
    text-decoration: none !important;
    border-radius: 0 0 6px 6px !important;
    margin: 0 !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}
.bm-pcard-btn:hover,
.bm-pcard-btn:hover * {
    background: #c8102e !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* Merken-Button — nur auf Kategorie-Seiten */
.bm-merken-btn {
    font-size: 0.78rem !important;
    padding: 7px 10px !important;
    margin-top: 4px !important;
}

/* FORCE-OVERRIDE: text-transform auf pcard-btn */
a.bm-pcard-btn,
.bm-pcard a.bm-pcard-btn,
.bm-pcard-info a.bm-pcard-btn,
li.bm-pcard-li a.bm-pcard-btn {
    text-transform: none !important;
    font-size: 13px !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* ============================================================
   NEU-BADGE REDESIGN 16.04.2026 — Olik-Feedback
   ============================================================ */
.bm-pcard-new-badge {
    position: absolute !important;
    top: 10px !important;
    left: -4px !important;
    background: #c8102e !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 0.7rem !important;
    font-weight: 800 !important;
    padding: 4px 10px 4px 8px !important;
    border-radius: 0 3px 3px 0 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    z-index: 10 !important;
    box-shadow: 1px 2px 6px rgba(200,16,46,0.35) !important;
    /* Ribbon-Schwanz links */
    border-left: 4px solid #8f0b20 !important;
}

/* NEU-BADGE v2 — größer, sichtbarer */
.bm-pcard-new-badge {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background: #c8102e !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    padding: 5px 0 !important;
    border-radius: 0 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    text-align: center !important;
    z-index: 10 !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2) !important;
    border-left: none !important;
    border-radius: 3px 3px 0 0 !important;
    width: 100% !important;
}

/* ============================================================
   BM PRODUKTKARTE v2.0 — Startseite Redesign (2026-04-16)
   Moderneres Design, bessere Proportionen, sauberer Hover
   ============================================================ */

/* Nur auf Startseite */
.home .bm-pcard {
    border-radius: 12px !important;
    box-shadow: 0 2px 8px rgba(26,46,82,0.07) !important;
    border: 1.5px solid #edf0f6 !important;
    overflow: visible !important;
    transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease !important;
    background: #fff !important;
}
.home .bm-pcard:hover {
    box-shadow: 0 8px 28px rgba(26,46,82,0.14) !important;
    transform: translateY(-4px) !important;
    border-color: #d0d9ec !important;
}

/* Cover-Wrapper: festes 3:4-Seitenverhältnis */
.home .bm-pcard-imgwrap {
    border-radius: 10px 10px 0 0 !important;
    overflow: hidden !important;
    aspect-ratio: 3/4 !important;
    background: #f0f3f8 !important;
    border-bottom: none !important;
    position: relative !important;
}
.home .bm-pcard-imgwrap img,
.home .bm-pcard-cover {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
    transition: transform 0.3s ease !important;
}
.home .bm-pcard:hover .bm-pcard-imgwrap img,
.home .bm-pcard:hover .bm-pcard-cover {
    transform: scale(1.04) !important;
}

/* Hover-Overlay */
.home .bm-pcard-imgwrap::after {
    content: 'Ansehen';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    background: linear-gradient(transparent, rgba(26,46,82,0.78));
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 0.75rem;
    font-weight: 700;
    font-family: 'Poppins', sans-serif;
    text-align: center;
    padding: 32px 12px 14px;
    opacity: 0;
    transition: opacity 0.22s ease;
    pointer-events: none;
}
.home .bm-pcard:hover .bm-pcard-imgwrap::after {
    opacity: 1;
}

/* Info-Bereich */
.home .bm-pcard-info {
    padding: 12px 14px 0 !important;
}
.home .bm-pcard-format {
    font-size: 0.65rem !important;
    font-weight: 600 !important;
    color: #8fa8c8 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    margin-bottom: 5px !important;
}
.home .bm-pcard-title {
    font-size: 0.83rem !important;
    font-weight: 700 !important;
    color: #1a2e52 !important;
    line-height: 1.35 !important;
    margin-bottom: 6px !important;
}
.home .bm-pcard-excerpt {
    font-size: 0.72rem !important;
    color: #8a9ab0 !important;
    line-height: 1.4 !important;
    margin-bottom: 4px !important;
}
.home .bm-pcard-price {
    font-size: 1rem !important;
    font-weight: 800 !important;
    color: #c8102e !important;
    padding: 6px 0 8px !important;
}

/* Warenkorb-Button: immer sichtbar, dezent Navy bei Hover */
.home .bm-pcard-btn {
    background: #f0f4ff !important;
    color: #1a2e52 !important;
    -webkit-text-fill-color: #1a2e52 !important;
    border-radius: 0 0 10px 10px !important;
    font-size: 0.72rem !important;
    padding: 10px 14px !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transition: background 0.15s !important;
    margin: 0 -14px !important;
    letter-spacing: 0.03em !important;
    border-top: 1px solid #e8eef8 !important;
}
.home .bm-pcard:hover .bm-pcard-btn {
    background: #1a2e52 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border-top-color: #1a2e52 !important;
}
.home a.bm-pcard-btn:hover {
    background: #c8102e !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* NEU-Badge */
.home .bm-pcard-new-badge {
    position: absolute !important;
    top: 10px !important; left: 10px !important;
    background: #c8102e !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-size: 0.6rem !important;
    font-weight: 800 !important;
    padding: 3px 8px !important;
    border-radius: 4px !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    z-index: 2 !important;
}

/* Startseite: Produkte ohne gutes Bild (Placeholder) ausblenden */
.home li.bm-pcard-li:has(img[src*="placeholder"]),
.home li.bm-pcard-li:has(img[src*="ph_"]),
.home li.bm-pcard-li:has(img[src*="placeholder-navy"]) {
    display: none !important;
}

