/* ==========================================================================
   PFOTENIVO — 1:1 RESTWICK SHOP ARCHITECTURE & DESIGN SYSTEM
   Mirrors https://tryrestwick.com/ in layout, typography, spacing, marquee
   animations, tier card, wave band, video testimonial cards, FAQ & footer.
   Structured with 3-Layer Token Architecture (Primitive -> Semantic -> Component).
   ========================================================================== */

@font-face {
  font-family: "Archivo Black";
  src: url("/assets/fonts/archivo-black-ext.woff2") format("woff2");
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Archivo Black";
  src: url("/assets/fonts/archivo-black.woff2") format("woff2");
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  /* Layer 1: Primitive Tokens */
  --pf-forest-900: #1A382B;
  --pf-forest-800: #244C3B;
  --pf-forest-700: #244C3B;
  --pf-forest-600: #244C3B;
  --pf-forest-100: #B4C4B2;
  --pf-forest-50: #F4F7F3;
  --pf-ink-950: #111111;
  --pf-ink-900: #1A1A1A;
  --pf-ink-600: #555555;
  --pf-neutral-200: #E5E3DC;
  --pf-neutral-100: #F4F4F2;
  --pf-white: #FFFFFF;
  --pf-red-600: #C8102E;
  --pf-gold-400: #FFD43B;
  --pf-blue-500: #1689E8;
  --pf-space-1: 4px;
  --pf-space-2: 8px;
  --pf-space-3: 12px;
  --pf-space-4: 16px;
  --pf-space-6: 24px;
  --pf-space-8: 32px;
  --pf-space-10: 40px;
  --pf-radius-sm: 8px;
  --pf-radius-md: 12px;
  --pf-radius-lg: 16px;
  --pf-radius-pill: 999px;

  /* Layer 2: Semantic Tokens */
  --bh-y: #244C3B;
  --bh-y2: #1A382B;
  --bh-y-soft: #B4C4B2;
  --bh-y-line: #B4C4B2;
  --bh-y-wave: #B4C4B2;
  --bh-k: var(--pf-ink-950);
  --bh-text: var(--pf-ink-900);
  --bh-muted: var(--pf-ink-600);
  --bh-line: var(--pf-neutral-200);
  --bh-bg: var(--pf-white);
  --bh-grey: var(--pf-neutral-100);
  --bh-red: var(--pf-red-600);
  --bh-green-save: #244C3B;
  --bh-star: var(--pf-gold-400);
  --bh-blue-verified: var(--pf-blue-500);
  --bh-head: "Archivo Black", "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --bh-body: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  /* Layer 3: Component Tokens */
  --bh-r: var(--pf-radius-md);
  --bh-btn-h: 58px;
  --bh-btn-bg: var(--pf-ink-950);
  --bh-btn-hover: #262626;
  --bh-btn-shadow: #000000;
  --bh-gutter: var(--pf-space-4);
  --bh-max: 1200px;
}

html {
  scroll-behavior: smooth !important;
  scroll-padding-top: 84px !important;
}

html,
body.product-page {
  margin: 0;
  background: var(--bh-bg) !important;
  color: var(--bh-text) !important;
  font-family: var(--bh-body) !important;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  max-width: 100vw !important;
  overflow-x: clip !important;
}

body.product-page main#inhalt {
  margin: 0;
  background: var(--bh-bg) !important;
  color: var(--bh-text) !important;
  font-family: var(--bh-body) !important;
  overflow: visible !important;
}

#start {
  display: none !important;
}

/* Visually hidden helper for screen-reader labels */
.bh-sr {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Hide only redundant banners; keep buyer-proof, price-block, cart button, offer-seal & payments visible! */
.product-page .reference-product.bh-pdp .gallery-community-banner,
.site-header.bh-header .mobile-menu:not([open]) > nav {
  display: none !important;
}

/* Prevent legacy JS opacity/scroll-reveal traps from hiding content */
.product-page .reveal-ready,
.product-page .hero-enter {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}

.bh-wrap {
  max-width: var(--bh-max);
  margin: 0 auto;
  padding: 0 var(--bh-gutter);
}

.bh-h {
  font-family: var(--bh-head) !important;
  font-weight: 400 !important;
  letter-spacing: -0.015em !important;
  line-height: 1.1 !important;
  margin: 0;
  color: var(--bh-k) !important;
}

.bh-ico {
  display: block;
  flex: none;
}

.bh-plain {
  background: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: inherit;
  cursor: pointer;
  font: inherit;
  box-shadow: none !important;
  min-height: 0 !important;
  min-width: 0 !important;
}

/* ==========================================================================
   1A. TOP COUNTDOWN BAR (.bh-cd) — Hidden per restyle request, preserved in DOM
   ========================================================================== */
.bh-cd {
  display: none !important;
  background: #B4C4B2 !important;
  color: #111111;
  border-bottom: 1px solid rgba(36, 76, 59, 0.18);
}

.bh-cd__in {
  max-width: var(--bh-max);
  margin: 0 auto;
  padding: 7px var(--bh-gutter);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
}

.bh-cd__label {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.bh-cd__t {
  font-family: var(--bh-head);
  font-size: 15.5px;
  font-weight: 400;
  letter-spacing: 0.45px;
  text-transform: uppercase;
  color: #111111;
  line-height: 1;
}

.bh-cd__s {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: #111111;
  margin-top: 2px;
}

.bh-cd__clock {
  display: flex;
  align-items: flex-start;
  gap: 4px;
}

.bh-cd__u {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: transparent;
  padding: 0;
  min-width: 0;
}

.bh-cd__n {
  display: block;
  background: var(--bh-k);
  color: #FFFFFF;
  font-family: var(--bh-head);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  min-width: 34px;
  text-align: center;
  padding: 6px 4px;
  border-radius: 6px;
  letter-spacing: 0.5px;
  font-variant-numeric: tabular-nums;
  box-sizing: border-box;
}

.bh-cd__l {
  display: block;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: #111111;
  opacity: 0.9;
  margin-top: 2px;
}

.bh-cd__sep {
  font-family: var(--bh-head);
  font-weight: 400;
  font-size: 16px;
  line-height: 28px;
  color: #111111;
  padding: 0 1px;
}

@media (max-width: 520px) {
  .bh-cd__in {
    flex-wrap: nowrap;
    gap: 10px;
    padding: 6px 10px;
  }
  .bh-cd__t {
    font-size: 13px;
    letter-spacing: 0.3px;
    white-space: nowrap;
  }
  .bh-cd__clock {
    gap: 3px;
  }
  .bh-cd__n {
    font-size: 13.5px;
    min-width: 27px;
    padding: 4px 3px;
    border-radius: 5px;
  }
  .bh-cd__l {
    font-size: 7px;
    margin-top: 1px;
  }
  .bh-cd__sep {
    font-size: 13.5px;
    line-height: 22px;
  }
}

/* ==========================================================================
   1. TOP STATIC ANNOUNCEMENT BAR (.bh-top-bar) — Black Archivo Black bar
   ========================================================================== */
.bh-top-bar {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  background: var(--bh-k) !important;
  color: #FFFFFF !important;
  width: 100% !important;
  padding: 8px 14px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-sizing: border-box !important;
}

.bh-top-bar__text {
  font-family: var(--bh-head) !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: #FFFFFF !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  line-height: 1.3 !important;
  text-align: center !important;
}

@media (max-width: 600px) {
  .bh-top-bar {
    padding: 7px 10px !important;
  }
  .bh-top-bar__text {
    font-size: 11px !important;
    letter-spacing: 0.03em !important;
  }
}

/* ==========================================================================
   ACTIVE SCROLLING TICKER IN THE TRUST BAND (Das Notfall-Kit, das wirklich was ändert)
   ========================================================================== */
.bh-band .bh-tick {
  display: block !important;
  background: rgba(0, 0, 0, 0.14) !important;
  color: #FFFFFF !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  width: 100% !important;
  border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18) !important;
  padding: 10px 0 !important;
}

.bh-band .bh-tick__track {
  display: inline-flex !important;
  width: max-content !important;
  animation: bh-marquee var(--bh-speed, 34s) linear infinite !important;
  will-change: transform !important;
}

.bh-band .bh-tick__item {
  font-family: var(--bh-head) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.03em !important;
  padding: 8px 18px !important;
  text-transform: uppercase !important;
  color: #FFFFFF !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Hide header contact icon in top-left */
.site-header.bh-header .bh-header__contact {
  display: none !important;
}

.bh-tick__track {
  display: inline-flex;
  width: max-content;
  animation: bh-marquee var(--bh-speed, 34s) linear infinite;
  will-change: transform;
}

.bh-tick__item {
  font-family: var(--bh-head);
  font-size: 12.5px;
  font-weight: 400;
  letter-spacing: 0.04em;
  padding: 8px 18px;
  text-transform: uppercase;
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

@keyframes bh-marquee {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-50%, 0, 0);
  }
}

/* ==========================================================================
   2. HEADER (.site-header.bh-header) — Clean 3-column Restwick layout
      Left: Overview/Menu drawer icon + Kontakt icon
      Center: pfotenivo logo
      Right: Cart icon
   ========================================================================== */
.site-header.bh-header {
  background: #FFFFFF !important;
  border-bottom: 1px solid #ECECE8 !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 45 !important;
  backdrop-filter: none !important;
}

.site-header.bh-header .bh-header__in {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  height: 62px !important;
  max-width: var(--bh-max) !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 10px !important;
  box-sizing: border-box !important;
}

.bh-header__l,
.bh-header__r {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.bh-header__l {
  justify-self: start !important;
}

.bh-header__r {
  justify-self: end !important;
  justify-content: flex-end !important;
}

.bh-iconbtn,
.site-header.bh-header .mobile-menu > summary,
.site-header.bh-header .header-cart {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  border-radius: 10px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--bh-k) !important;
  position: relative !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transition: background 0.15s ease !important;
}

.bh-iconbtn:hover,
.site-header.bh-header .mobile-menu > summary:hover,
.site-header.bh-header .header-cart:hover {
  background: var(--bh-grey) !important;
}

/* Always show the expandable menu button on both mobile and desktop */
.site-header.bh-header .mobile-menu {
  display: block !important;
  position: relative !important;
}

.site-header.bh-header .mobile-menu > summary {
  list-style: none !important;
  flex-direction: column !important;
  gap: 4.5px !important;
}

.site-header.bh-header .mobile-menu > summary::-webkit-details-marker,
.site-header.bh-header .mobile-menu > summary::after {
  display: none !important;
  content: none !important;
}

.site-header.bh-header .mobile-menu > summary span {
  display: block !important;
  width: 20px !important;
  height: 2px !important;
  background: var(--bh-k) !important;
  border-radius: 2px !important;
  transition: transform 0.2s ease, opacity 0.2s ease !important;
}

/* Center wordmark logo */
.site-header.bh-header .wordmark {
  justify-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--bh-head) !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  color: var(--bh-k) !important;
  text-decoration: none !important;
}

.site-header.bh-header .wordmark img {
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  border: 1.5px solid var(--bh-line) !important;
}

.site-header.bh-header .wordmark span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}

/* Cart icon & badge — crisp 44x44 touch target, never squished */
.site-header.bh-header .header-cart {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  gap: 0 !important;
  border: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.site-header.bh-header .header-cart svg {
  width: 26px !important;
  height: 26px !important;
  min-width: 26px !important;
  min-height: 26px !important;
  flex: none !important;
  display: block !important;
  overflow: visible !important;
}

.site-header.bh-header .bh-count {
  display: none !important;
}

/* Slide-out Drawer Menu */
.site-header.bh-header .mobile-menu[open] > nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  width: min(320px, 86vw) !important;
  height: 100dvh !important;
  background: #FFFFFF !important;
  z-index: 100 !important;
  padding: 0 !important;
  box-shadow: 20px 0 60px rgba(0, 0, 0, 0.22), 0 0 0 100vw rgba(0, 0, 0, 0.45) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.bh-drawer-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px 14px 20px;
  border-bottom: 1px solid #EEEEEE;
}

.bh-drawer-top strong {
  font-family: var(--bh-head);
  font-size: 18px;
  font-weight: 900;
  color: var(--bh-k);
}

.bh-drawer-close {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  border: 0;
  background: var(--bh-grey);
  color: var(--bh-k);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.bh-drawer-links {
  display: flex;
  flex-direction: column;
  padding: 8px 0;
}

.site-header.bh-header .mobile-menu nav .bh-drawer-links a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 14px 20px !important;
  font-family: var(--bh-head) !important;
  font-size: 16.5px !important;
  font-weight: 800 !important;
  color: var(--bh-k) !important;
  text-decoration: none !important;
  border-bottom: 1px solid #F2F2EE !important;
  background: transparent !important;
}

.site-header.bh-header .mobile-menu nav .bh-drawer-links a:hover {
  background: var(--bh-grey) !important;
}

.bh-drawer-foot {
  padding: 16px 20px 22px;
  border-top: 1px solid #EEEEEE;
  background: var(--bh-grey);
}

.bh-drawer-foot p {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 700;
  color: var(--bh-muted);
  text-align: center;
}

/* ==========================================================================
   3. PRIMARY CTA BUTTON (.bh-btn) & SECONDARY CART BUTTON (.bh-btn-cart)
   ========================================================================== */
.bh-btn,
a.bh-btn,
button.bh-btn,
.product-page .reference-product.bh-pdp .buy-actions .bh-btn,
.product-page .proof-section.bh-proof .bh-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: var(--bh-btn-h) !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: var(--bh-r) !important;
  background: var(--bh-btn-bg) !important;
  color: #FFFFFF !important;
  font-family: var(--bh-head) !important;
  font-size: 18.5px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: 0 3px 0 var(--bh-btn-shadow) !important;
  transition: transform 0.08s ease, box-shadow 0.08s ease, background 0.15s ease !important;
  box-sizing: border-box !important;
}

.bh-btn:hover,
a.bh-btn:hover,
button.bh-btn:hover,
.product-page .reference-product.bh-pdp .buy-actions .bh-btn:hover,
.product-page .proof-section.bh-proof .bh-btn:hover {
  background: var(--bh-btn-hover) !important;
  color: #FFFFFF !important;
}

.bh-btn:active,
a.bh-btn:active,
button.bh-btn:active {
  transform: translateY(2px) !important;
  box-shadow: 0 1px 0 var(--bh-btn-shadow) !important;
}

/* Secondary "In den Warenkorb" button directly underneath "Jetzt sichern" */
.product-page .reference-product.bh-pdp .buy-actions .bh-btn-cart {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-height: 48px !important;
  margin-top: 10px !important;
  padding: 0 18px !important;
  border: 2px solid var(--bh-k) !important;
  border-radius: var(--bh-r) !important;
  background: #FFFFFF !important;
  color: var(--bh-k) !important;
  font-family: var(--bh-body) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  cursor: pointer !important;
  box-shadow: none !important;
  transition: background 0.15s ease, color 0.15s ease !important;
  box-sizing: border-box !important;
}

.product-page .reference-product.bh-pdp .buy-actions .bh-btn-cart:hover {
  background: var(--bh-grey) !important;
  color: var(--bh-k) !important;
}

/* ==========================================================================
   4. PRODUCT HERO SECTION (#angebot.bh-pdp) — 1:1 Restwick
   ========================================================================== */
.product-page .reference-product.bh-pdp {
  max-width: var(--bh-max) !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 var(--bh-gutter) 28px !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* --- Left Column: Product Gallery (.bh-gal) --- */
.product-page .reference-product.bh-pdp .bh-gal {
  position: relative !important;
  margin: 0 calc(-1 * var(--bh-gutter)) !important;
}

.product-page .reference-product.bh-pdp .bh-gal__main {
  position: relative !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: var(--bh-grey) !important;
  border: 0 !important;
  box-shadow: none !important;
}

.product-page .reference-product.bh-pdp .bh-gal__track {
  display: flex !important;
  aspect-ratio: 1 / 1 !important;
  width: 100% !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
  border-radius: 0 !important;
}

.product-page .reference-product.bh-pdp .bh-gal__track::-webkit-scrollbar {
  display: none !important;
}

/* Fix all 5 slides so images and headings never collapse or clip */
.product-page .reference-product.bh-pdp .gallery-slide {
  flex: 0 0 100% !important;
  width: 100% !important;
  height: 100% !important;
  scroll-snap-align: start !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  position: relative !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  container-type: inline-size !important;
}

.product-page .reference-product.bh-pdp .gallery-slide figcaption {
  position: absolute !important;
  bottom: 10px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--bh-k) !important;
  background: rgba(255, 255, 255, 0.9) !important;
  padding: 4px 12px !important;
  border-radius: 999px !important;
  pointer-events: none !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.product-page .reference-product.bh-pdp .gallery-slide figcaption:empty {
  display: none !important;
}

/* Slide 1: Animated Kit Assembly + Top-Center Viral Pill */
.product-page .reference-product.bh-pdp .gallery-slide:first-child {
  background: #F3F2E8 var(--studio-stage) center/cover !important;
  padding: 48px 12px 28px !important;
}

.product-page .reference-product.bh-pdp .gallery-slide .kit-assembly {
  width: 96% !important;
  max-width: 530px !important;
  height: auto !important;
  aspect-ratio: 1.54 !important;
  margin: 14px auto 0 !important;
  position: relative !important;
}

/* Slide 1: Top-Left Stack (Sonja Proof Pill + 100% Handgeschrieben Pill Left-Aligned Underneath) */
.product-page .reference-product.bh-pdp .gallery-slide .bh-slide-top-left {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  z-index: 9 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  pointer-events: none !important;
  max-width: calc(100% - 24px) !important;
}

.product-page .reference-product.bh-pdp .gallery-slide .bh-slide-top-left .buyer-proof.bh-slide-proof {
  position: static !important;
  margin: 0 !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(17, 17, 17, 0.1) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08) !important;
  padding: 4px 12px 4px 5px !important;
  border-radius: 999px !important;
  pointer-events: auto !important;
}

.product-page .reference-product.bh-pdp .gallery-slide .bh-slide-top-left .bh-slide-badges {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  pointer-events: auto !important;
}

.product-page .reference-product.bh-pdp .gallery-slide .bh-slide-badge-pill {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(24, 60, 42, 0.14) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
  border-radius: 999px !important;
  padding: 3.5px 11px !important;
  font-family: var(--bh-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: #183C2A !important;
  letter-spacing: -0.01em !important;
  white-space: nowrap !important;
}

.product-page .reference-product.bh-pdp .gallery-slide figcaption.bh-viral-caption {
  position: absolute !important;
  top: 14px !important;
  bottom: auto !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 9 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  color: #111111 !important;
  border: 1px solid rgba(17, 17, 17, 0.1) !important;
  padding: 5px 14px !important;
  border-radius: 999px !important;
  font-family: var(--bh-body) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08) !important;
  white-space: nowrap !important;
}

.product-page .reference-product.bh-pdp .gallery-slide figcaption.bh-viral-caption strong {
  font-family: var(--bh-head) !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
  color: #111111 !important;
}

@keyframes bh-pulse-dot {
  0%, 100% {
    box-shadow: 0 0 0 3px rgba(22, 163, 74, 0.25), 0 0 8px rgba(22, 163, 74, 0.65);
    transform: scale(1);
  }
  50% {
    box-shadow: 0 0 0 5px rgba(22, 163, 74, 0.38), 0 0 14px rgba(22, 163, 74, 0.95);
    transform: scale(1.08);
  }
}

.bh-viral-badge__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #16A34A;
  box-shadow: 0 0 0 3px rgba(22, 163, 74, 0.28), 0 0 10px rgba(22, 163, 74, 0.75);
  animation: bh-pulse-dot 1.8s ease-in-out infinite;
  flex: none;
}

/* Slide 2: Editorial photo slide ("Wenn der Alltag plötzlich laut wird.") */
.product-page .editorial-photo-slide {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  background: #F3F2E8 var(--studio-stage) center/cover !important;
  padding: 6% 6% 5% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  text-align: left !important;
}

.product-page .editorial-photo-slide .editorial-photo-heading {
  flex: 0 0 auto !important;
}

.product-page .editorial-photo-slide .editorial-photo-heading h2 {
  font-family: var(--serif, Georgia, serif) !important;
  font-weight: 400 !important;
  font-size: clamp(18px, 7.2cqw, 44px) !important;
  line-height: 1.08 !important;
  color: #183C2A !important;
  margin: 0 !important;
}

.product-page .editorial-photo-slide .editorial-photo-heading > p {
  font-size: clamp(11px, 3.2cqw, 18px) !important;
  line-height: 1.35 !important;
  margin: 2% 0 0 !important;
  color: #244B35 !important;
}

.product-page .editorial-photo-slide > img {
  display: block !important;
  width: 100% !important;
  height: 56% !important;
  flex: 1 1 56% !important;
  min-height: 40% !important;
  object-fit: cover !important;
  margin: 3% 0 !important;
  border-radius: 8px !important;
}

.product-page .editorial-photo-slide .editorial-photo-footer {
  flex: 0 0 auto !important;
  font-family: var(--serif, Georgia, serif) !important;
  font-size: clamp(12px, 4.2cqw, 24px) !important;
  line-height: 1.2 !important;
  text-align: center !important;
  margin: 0 !important;
  color: #183C2A !important;
}

/* Slide 3: Workbook preview gallery ("Ein Blick ins Notfallkit.") */
.product-page .workbook-gallery {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4% !important;
  padding: 5% !important;
  background: #F3F2E8 var(--studio-stage) center/cover !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Slide 4: Full-bleed square image ("Einfach öffnen.") */
.product-page .reference-product.bh-pdp .gallery-slide > img.gallery-editorial {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Slide 5: Community gallery ("Das sagt die Community") */
.product-page .community-gallery {
  width: 100% !important;
  height: 100% !important;
  background: #F3F2E8 var(--studio-stage) center/cover !important;
  box-sizing: border-box !important;
}

/* Gallery Overlay Prev/Next Controls */
.product-page .reference-product.bh-pdp .bh-gal__controls {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 0 10px !important;
  margin: 0 !important;
  z-index: 4 !important;
}

.product-page .reference-product.bh-pdp .bh-gal__nav,
.product-page .reference-product.bh-pdp .bh-gal__nav:disabled {
  pointer-events: auto !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  border-radius: 50% !important;
  background: #FFFFFF !important;
  opacity: 1 !important;
  border: 1px solid rgba(17, 17, 17, 0.12) !important;
  color: #111111 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.16) !important;
  cursor: pointer !important;
}

.product-page .reference-product.bh-pdp .bh-gal__counter {
  display: none !important;
}

/* Gallery Thumbnails (.bh-gal__thumbs) — 1:1 Restwick square thumbs with matching text + art */
.product-page .reference-product.bh-pdp .bh-gal__thumbs {
  display: flex !important;
  gap: 8px !important;
  margin-top: 10px !important;
  padding: 2px var(--bh-gutter) !important;
  overflow-x: auto !important;
  scroll-snap-type: x proximity !important;
  scrollbar-width: none !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs::-webkit-scrollbar {
  display: none !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb] {
  flex: 0 0 64px !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 2px solid transparent !important;
  background: var(--bh-grey) !important;
  padding: 0 !important;
  cursor: pointer !important;
  opacity: 0.78 !important;
  transition: opacity 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease !important;
  container-type: inline-size !important;
  position: relative !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb][aria-current="true"] {
  border-color: var(--bh-k) !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 2px var(--bh-y) !important;
}

/* Scale composite slides cleanly inside 64x64 / 84x84 thumbnails so text + image both show! */
.product-page .bh-gal__thumbs button[data-gallery-thumb] > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 4px !important;
  background: #F3F2E8 var(--studio-stage) center/cover !important;
  display: block !important;
}

/* Thumbnail 1: 1:1 Miniature of Slide 1 (Top-Left Sonja Pill + Top-Right Circle + Kit + Bottom Viral Pill) */
.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1 {
  width: 100% !important;
  height: 100% !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 15% 4% 13% !important;
  background: #F3F2E8 var(--studio-stage) center/cover !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1 > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  display: block !important;
  padding: 0 !important;
  background: transparent !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__proof {
  position: absolute !important;
  top: 4% !important;
  left: 4% !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 2px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 0.5px solid rgba(17, 17, 17, 0.14) !important;
  border-radius: 999px !important;
  padding: 1px 3.5px 1px 1.5px !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
  max-width: 68% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__avatars {
  display: inline-flex !important;
  align-items: center !important;
  flex: none !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__avatars img {
  width: 6px !important;
  height: 6px !important;
  min-width: 6px !important;
  min-height: 6px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 0.5px solid #FFFFFF !important;
  margin-left: -1.8px !important;
  padding: 0 !important;
  background: none !important;
  display: block !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__avatars img:first-child {
  margin-left: 0 !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__proof-text {
  font-family: var(--bh-body) !important;
  font-size: 3.3px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  line-height: 1 !important;
  letter-spacing: -0.02em !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__badge {
  position: absolute !important;
  top: 15% !important;
  left: 4% !important;
  right: auto !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(255, 255, 255, 0.94) !important;
  border: 0.5px solid rgba(24, 60, 42, 0.16) !important;
  border-radius: 999px !important;
  padding: 0.5px 3px !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__cap {
  font-family: var(--bh-body) !important;
  font-size: 2.8px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #183C2A !important;
  white-space: nowrap !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__viral {
  position: absolute !important;
  bottom: 4% !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 3 !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 0.5px solid rgba(17, 17, 17, 0.14) !important;
  border-radius: 999px !important;
  padding: 1.5px 4.5px !important;
  font-family: var(--bh-body) !important;
  font-size: 3.1px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1__viral strong {
  font-family: var(--bh-head) !important;
  font-weight: 400 !important;
  color: #111111 !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] > img.gallery-editorial {
  padding: 0 !important;
  object-fit: cover !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .editorial-photo-slide {
  padding: 4px !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .editorial-photo-heading h2 {
  font-size: 6px !important;
  line-height: 1.05 !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .editorial-photo-heading > p {
  font-size: 4px !important;
  margin-top: 1px !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .editorial-photo-slide > img {
  height: 30px !important;
  min-height: 24px !important;
  margin: 2px 0 !important;
  border-radius: 2px !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .editorial-photo-footer {
  font-size: 4.5px !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .workbook-gallery {
  padding: 3px !important;
  gap: 2px !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .workbook-gallery header .eyebrow {
  display: none !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .workbook-gallery header h2 {
  font-size: 5.5px !important;
  line-height: 1.05 !important;
  margin: 0 !important;
}

.product-page .bh-gal__thumbs button[data-gallery-thumb] .workbook-gallery header > p:last-child,
.product-page .bh-gal__thumbs button[data-gallery-thumb] .workbook-gallery-pages > div > p,
.product-page .bh-gal__thumbs button[data-gallery-thumb] .workbook-gallery .material-open > span {
  display: none !important;
}

/* --- Right Column: Product Info (.bh-info) --- */
.product-page .reference-product.bh-pdp .bh-info {
  padding-top: 16px !important;
  display: block !important;
}

.product-page .reference-product.bh-pdp .product-promise {
  display: block !important;
  background: #F4F4F1 !important;
  border-radius: 8px !important;
  padding: 8px 14px !important;
  font-family: var(--bh-body) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #222222 !important;
  text-align: center !important;
  margin: 0 0 12px 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 600px) {
  .product-page .reference-product.bh-pdp .product-promise {
    font-size: 11.5px !important;
    padding: 7px 10px !important;
    margin-bottom: 10px !important;
  }
}

.product-page .reference-product.bh-pdp .product-heading {
  margin: 0 !important;
}

/* 0. Customer Avatars & Social Proof Above Ratings (.buyer-proof) — Smooche Style */
.product-page .reference-product.bh-pdp .buyer-proof,
.product-page .reference-product.bh-pdp .buyer-proof.bh-hero-proof {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 0 8px 0 !important;
  box-shadow: none !important;
}

.product-page .reference-product.bh-pdp .buyer-avatars {
  display: inline-flex !important;
  align-items: center !important;
  flex: none !important;
}

.product-page .reference-product.bh-pdp .buyer-avatars img {
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 2px solid #FFFFFF !important;
  margin-left: -7px !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12) !important;
}

.product-page .reference-product.bh-pdp .buyer-avatars img:first-child {
  margin-left: 0 !important;
}

.product-page .reference-product.bh-pdp .buyer-proof p {
  margin: 0 !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  color: #222222 !important;
}

.product-page .reference-product.bh-pdp .buyer-proof p strong {
  font-weight: 700 !important;
  color: #111111 !important;
}

.product-page .reference-product.bh-pdp .buyer-proof .bh-verified {
  vertical-align: -2px !important;
  margin: 0 1px 0 2px !important;
  display: inline-block !important;
}

@media (max-width: 600px) {
  .product-page .reference-product.bh-pdp .buyer-proof,
  .product-page .reference-product.bh-pdp .buyer-proof.bh-hero-proof {
    gap: 7px !important;
    margin-bottom: 6px !important;
  }
  .product-page .reference-product.bh-pdp .buyer-avatars img {
    width: 22px !important;
    height: 22px !important;
    margin-left: -6px !important;
  }
  .product-page .reference-product.bh-pdp .buyer-proof p {
    font-size: 12px !important;
  }
}

/* 1. Rating Line (.bh-rating) & Global Fractional Star Clipping (4.7 = 70% 5th star) */
.product-page .reference-product.bh-pdp .bh-rating {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: left !important;
  gap: 8px !important;
  font-size: 14px !important;
  color: var(--bh-text) !important;
  text-decoration: none !important;
  margin: 0 !important;
}

.product-page .reference-product.bh-pdp .bh-rating .rating-line {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  flex-wrap: wrap !important;
}

.product-page .reference-product.bh-pdp .bh-rating .stars {
  display: inline-flex !important;
  gap: 2px !important;
  transform: none !important;
  margin: 0 !important;
}

.product-page .star-single {
  position: relative !important;
  display: inline-block !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  flex: 0 0 17px !important;
  vertical-align: middle !important;
}

.product-page .star-single .star-background {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  opacity: 0.26 !important;
  filter: grayscale(1) !important;
}

.product-page .star-single .star-foreground {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  height: 17px !important;
  min-width: 0 !important;
  flex-basis: auto !important;
  overflow: hidden !important;
  display: block !important;
}

.product-page .star-single .star-foreground img {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  max-width: none !important;
}

.product-page .reference-product.bh-pdp .bh-rating__text {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--bh-text) !important;
}

/* 2. Product Title (.bh-title) — Heavy Archivo Black like Restwick */
.product-page .reference-product.bh-pdp h1#produkt-titel.bh-title {
  font-family: var(--bh-head) !important;
  font-size: clamp(25px, 6.8vw, 32px) !important;
  font-weight: 400 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.015em !important;
  color: var(--bh-k) !important;
  margin: 8px 0 12px !important;
  overflow-wrap: break-word !important;
}

/* 2B. Prominent Hero Price Row (> .bh-info > .price-block) — Crossed-out 54 € first, then 27 €, then 50 % RABATT */
.product-page .reference-product.bh-pdp > .bh-info > .price-block {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
}

.product-page .reference-product.bh-pdp > .bh-info > .price-block s {
  font-family: var(--bh-body) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #8A8A8A !important;
  text-decoration: line-through !important;
  text-decoration-thickness: 2px !important;
  order: 1 !important;
}

.product-page .reference-product.bh-pdp > .bh-info > .price-block strong {
  font-family: var(--bh-head) !important;
  font-size: 34px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  color: var(--bh-k) !important;
  order: 2 !important;
}

.product-page .reference-product.bh-pdp > .bh-info > .price-block .bh-save-pill {
  background: var(--bh-red) !important;
  color: #FFFFFF !important;
  font-family: var(--bh-head) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.03em !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  text-transform: uppercase !important;
  order: 3 !important;
}

.product-page .reference-product.bh-pdp > .bh-info > .price-block .popular-label {
  display: none !important;
}

.product-page .reference-product.bh-pdp > .bh-info > .price-block .price-context {
  display: none !important;
}

.product-page .reference-product.bh-pdp .product-description {
  display: block !important;
  font-size: 15.5px !important;
  line-height: 1.5 !important;
  color: var(--bh-text) !important;
  margin: 0 0 14px !important;
}

/* 3. Highlighted 3-Point Benefit List (.bh-bullets) */
.product-page .reference-product.bh-pdp .bh-bullets {
  list-style: none !important;
  margin: 14px 0 22px !important;
  padding: 0 !important;
  display: grid !important;
  gap: 11px !important;
}

.product-page .reference-product.bh-pdp .bh-bullets li {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #111111 !important;
}

.product-page .reference-product.bh-pdp .bh-bullets__icon {
  width: 24px !important;
  height: 24px !important;
  border-radius: 50% !important;
  background: #B4C4B2 !important;
  border: 1.5px solid #9EB29C !important;
  color: #244C3B !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: none !important;
}

@media (max-width: 600px) {
  .product-page .reference-product.bh-pdp .bh-bullets {
    margin: 10px 0 14px !important;
    gap: 7px !important;
  }
  .product-page .reference-product.bh-pdp .bh-bullets li {
    font-size: 13.5px !important;
    gap: 8px !important;
    line-height: 1.3 !important;
  }
  .product-page .reference-product.bh-pdp .bh-bullets__icon {
    width: 20px !important;
    height: 20px !important;
  }
  .product-page .reference-product.bh-pdp .bh-bullets__icon svg {
    width: 13px !important;
    height: 13px !important;
  }
}

/* 4. Restwick Tier Card (.bh-tiers & .bh-tier) — 1:1 Restwick */
.product-page .reference-product.bh-pdp .purchase-block {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.bh-tiers {
  display: grid;
  gap: 12px;
  margin: 0 0 14px;
  border: 0;
  padding: 0;
}

.bh-tier {
  position: relative;
  border: 2px solid var(--bh-line);
  border-radius: 14px;
  background: #FFFFFF;
  transition: border-color 0.15s, background 0.15s;
}

.bh-tier.is-selected {
  border-color: var(--bh-k);
  background: #F4F6F3;
  box-shadow: 0 0 0 1px var(--bh-k);
}

/* Tilted black pill sticker at top-right: "✦ Am beliebtesten" */
.bh-sticker {
  position: absolute;
  right: -4px;
  top: -14px;
  background: var(--bh-k);
  color: #FFFFFF;
  font-family: var(--bh-head);
  font-size: 11.5px;
  font-weight: 400;
  letter-spacing: 0.3px;
  padding: 5px 12px;
  border-radius: 999px;
  transform: rotate(3deg);
  box-shadow: 0 2px 0 var(--bh-y);
  z-index: 2;
  white-space: nowrap;
}

.bh-sticker::before {
  content: "\2726  ";
}

.bh-tier__head {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 16px 14px 12px;
}

.bh-tier__radio {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 2px solid var(--bh-k);
  background: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
}

.bh-tier.is-selected .bh-tier__radio::after {
  content: "";
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--bh-k);
}

.bh-tier__name {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
}

.bh-tier__title {
  font-family: var(--bh-head);
  font-size: 20px;
  font-weight: 400;
  color: var(--bh-k) !important;
  line-height: 1.1;
}

.bh-badge {
  display: inline-block;
  background: var(--bh-red);
  color: #FFFFFF;
  font-family: var(--bh-head);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 6px;
  line-height: 1.1;
  white-space: nowrap;
}

.bh-tier__sub {
  display: block;
  width: 100%;
  font-size: 13.5px;
  color: var(--bh-muted);
  margin-top: 2px;
}

.bh-tier__sub.is-save {
  color: var(--bh-green-save) !important;
  font-weight: 800 !important;
}

/* Large Prices on the right: #111111 BLACK current price + #8a8a8a GREY crossed-out 54 € */
.bh-tier__price {
  text-align: right;
  line-height: 1.1;
}

.bh-tier__now {
  font-family: var(--bh-head);
  font-size: 28px;
  font-weight: 400;
  color: var(--bh-k) !important;
  white-space: nowrap;
}

.bh-tier__was {
  font-size: 16.5px;
  font-weight: 700;
  color: #8A8A8A !important;
  text-decoration: line-through;
  text-decoration-thickness: 2px;
  white-space: nowrap;
}

.bh-tier__body {
  padding: 0 14px 14px;
}

/* Clean 2-Row Included Box inside .bh-tier__body */
.bh-tier__body .kit-summary.bh-kit-box {
  margin: 0 !important;
  padding: 0 !important;
  background: #FFFFFF !important;
  border: 1.5px solid #D5E2D9 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
}

.bh-tier__body .bh-kit-box__rows {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

.bh-kit-box__row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  width: 100% !important;
  padding: 10px 14px !important;
  box-sizing: border-box !important;
  background: #FFFFFF !important;
}

.bh-kit-box__row + .bh-kit-box__row {
  border-top: 1px dashed #D5E2D9 !important;
}

.bh-kit-box__row--bonus {
  background: #FAFDFB !important;
  padding: 11px 14px !important;
}

.bh-tier__body .kit-summary-main span {
  font-family: var(--bh-body) !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  color: var(--bh-k) !important;
  display: block !important;
  line-height: 1.25 !important;
}

.bh-tier__body .kit-summary-main small {
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: var(--bh-muted) !important;
  display: block !important;
  margin-top: 2px !important;
}

.bh-kit-box__included {
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #244C3B !important;
  background: #B4C4B2 !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
  flex: none !important;
}

.bh-tier__body .kit-summary-extra {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: var(--bh-k) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.bh-tier__body .kit-summary-extra strong {
  font-family: var(--bh-head) !important;
  font-weight: 400 !important;
  font-size: 15px !important;
  color: var(--bh-k) !important;
}

.bh-kit-box__right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 3px !important;
  flex: none !important;
}

.bh-free-pill {
  display: inline-block;
  background: #244C3B !important;
  color: #FFFFFF !important;
  font-family: var(--bh-head);
  font-size: 11.5px;
  font-weight: 400;
  letter-spacing: 0.04em;
  padding: 3px 9px;
  border-radius: 6px;
  text-transform: uppercase;
  line-height: 1.15;
}

.bh-limit-tag {
  display: block;
  font-size: 11.5px;
  font-weight: 800;
  color: var(--bh-red) !important;
  line-height: 1.1;
  white-space: nowrap;
}

/* 5. Urgency Availability Line + 13% Progress Bar (.bh-stock-wrap & .bh-stock-bar) */
.bh-stock-wrap {
  margin: 8px 0 14px;
}

.bh-stock {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14.5px;
  margin: 0 0 8px;
  color: var(--bh-k);
}

.bh-stock strong {
  font-weight: 800;
  color: var(--bh-k);
}

.bh-stock em {
  font-style: normal;
  color: var(--bh-red) !important;
  font-weight: 800;
}

.bh-stock-bar {
  width: 100%;
  height: 9px;
  border-radius: 999px;
  background: #E6EAE7;
  overflow: hidden;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.06);
}

.bh-stock-bar__fill {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #DC2626 0%, #EA580C 100%);
  transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

/* 6. Buy Actions Stack */
.product-page .reference-product.bh-pdp .buy-actions.bh-cta-stack {
  margin: 0 !important;
  display: block !important;
}

/* 7. Single Gray Trust Pill (.bh-trust) — "Sofortiger Online-Zugang" */
.bh-trust {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-top: 14px;
}

.bh-trust__i {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 700;
  color: var(--bh-k);
  background: var(--bh-grey);
  border-radius: 10px;
  padding: 11px 12px;
  text-align: center;
  line-height: 1.2;
}

/* 7B. Smooche-Style Urgency Progress Bar Box (.bh-urgency-box) */
.bh-urgency-box {
  margin-top: 14px;
  padding: 13px 15px;
  border-radius: 12px;
  background: #FAFBF9;
  border: 1.5px solid #DCE5DE;
}

.bh-urgency-box__head {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 9px;
}

.bh-urgency-box__head strong {
  font-family: var(--bh-body);
  font-size: 14.5px;
  font-weight: 800;
  color: #111111;
  line-height: 1.25;
}

.bh-urgency-box__head span {
  font-size: 13px;
  font-weight: 600;
  color: #4A4A4A;
  line-height: 1.35;
}

.bh-urgency-box__bar {
  width: 100%;
  height: 9px;
  border-radius: 999px;
  background: #E5EAE6;
  overflow: hidden;
  margin-bottom: 8px;
}

.bh-urgency-box__fill {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #2E5A3C 0%, #16A34A 100%);
}

.bh-urgency-box__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: 13px;
  line-height: 1.2;
}

.bh-urgency-box__meta strong {
  font-weight: 800;
  color: #111111;
}

.bh-urgency-box__timer {
  font-weight: 700;
  color: var(--bh-red);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.bh-urgency-box__timer b {
  font-weight: 800;
}

/* 7C. Smooche-Style Compact Mini-FAQ in Right Hero Column (.bh-mini-faq) */
.bh-mini-faq {
  margin-top: 16px;
  border-top: 1px solid #E5E3DC;
}

.bh-mini-faq details {
  border-bottom: 1px solid #E5E3DC;
  background: transparent;
  margin: 0;
  padding: 0;
}

.bh-mini-faq summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 2px;
  font-family: var(--bh-body);
  font-size: 14px;
  font-weight: 700;
  color: #111111;
  line-height: 1.35;
}

.bh-mini-faq summary::-webkit-details-marker,
.bh-mini-faq summary::after {
  display: none !important;
  content: none !important;
}

.bh-mini-faq__icon {
  font-size: 18px;
  font-weight: 500;
  color: #111111;
  line-height: 1;
  flex: none;
  transition: transform 0.2s ease;
}

.bh-mini-faq details[open] .bh-mini-faq__icon {
  transform: rotate(45deg);
}

@keyframes bh-accordion-slide {
  0% {
    opacity: 0;
    transform: translateY(-6px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.bh-mini-faq details[open] .bh-mini-faq__body {
  animation: bh-accordion-slide 0.24s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.bh-mini-faq__body {
  padding: 0 2px 13px;
  font-size: 13.5px;
  line-height: 1.5;
  color: #333333;
}

.bh-mini-faq__body p {
  margin: 0;
  color: #333333 !important;
}

/* 8. Upper Customer Reviews (.upper-reviews), Guarantee Seal (.offer-seal), Payment Icons & "Mehr erfahren" Button */
.product-page .reference-product.bh-pdp .bh-gal__below {
  padding: 0 var(--bh-gutter) !important;
  margin-top: 12px !important;
}

.product-page .reference-product.bh-pdp .upper-reviews {
  margin: 12px 0 0 !important;
  border: 1.5px solid var(--bh-line) !important;
  background: #FFFFFF !important;
  border-radius: 12px !important;
  padding: 6px 4px !important;
  color: #111111 !important;
}

.product-page .reference-product.bh-pdp .upper-reviews blockquote,
.product-page .reference-product.bh-pdp .upper-reviews p {
  color: #111111 !important;
}

.product-page .reference-product.bh-pdp .upper-reviews .feedback-person cite {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  color: #111111 !important;
}

.product-page .reference-product.bh-pdp .purchase-block > .offer-seal {
  display: grid !important;
  grid-template-columns: 68px minmax(0, 1fr) 24px !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: 12px !important;
  padding: 12px 14px !important;
  border: 1.5px solid var(--bh-line) !important;
  border-radius: 12px !important;
  background: var(--bh-grey) !important;
  text-decoration: none !important;
  text-align: left !important;
}

.product-page .reference-product.bh-pdp .purchase-block > .offer-seal > img {
  width: 68px !important;
  height: 68px !important;
}

.product-page .reference-product.bh-pdp .purchase-block > .offer-seal .offer-seal-content {
  display: contents !important;
}

.product-page .reference-product.bh-pdp .purchase-block > .offer-seal .offer-seal-copy {
  text-align: left !important;
  width: 100% !important;
}

.product-page .reference-product.bh-pdp .purchase-block > .offer-seal strong {
  font-size: 14.5px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  color: var(--bh-k) !important;
  margin-bottom: 3px !important;
}

.product-page .reference-product.bh-pdp .purchase-block > .offer-seal .offer-seal-copy > span {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--bh-y) !important;
}

.product-page .reference-product.bh-pdp .product-payments {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin-top: 14px !important;
  height: 32px !important;
}

/* "Mehr erfahren" anchor button scrolling directly to #kit-inhalt */
.bh-more-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  width: 100% !important;
  margin-top: 12px !important;
  padding: 13px 16px !important;
  border: 1.5px solid #111111 !important;
  border-radius: 12px !important;
  background: #FFFFFF !important;
  color: #111111 !important;
  font-family: var(--bh-body) !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  transition: background 0.15s ease, transform 0.1s ease !important;
}

.bh-more-btn:hover {
  background: var(--bh-grey) !important;
  color: #111111 !important;
}

.product-page .reference-product.bh-pdp .bh-gal__below .bh-more-btn {
  display: none !important;
}

/* Desktop Hero Grid (>= 860px) — 1:1 Restwick with exact top alignment */
@media (min-width: 860px) {
  .site-header.bh-header .bh-header__in {
    height: 70px !important;
    padding: 0 var(--bh-gutter) !important;
  }

  .site-header.bh-header .wordmark {
    font-size: 22px !important;
  }

  .site-header.bh-header .wordmark img {
    width: 38px !important;
    height: 38px !important;
  }

  .product-page .reference-product.bh-pdp {
    padding: 20px var(--bh-gutter) 44px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr) !important;
    grid-template-areas: none !important;
    gap: 44px !important;
    align-items: start !important;
    overflow: visible !important;
  }

  .product-page .reference-product.bh-pdp .bh-gal {
    margin: 0 !important;
    position: sticky !important;
    top: 88px !important;
    grid-area: auto !important;
    align-self: start !important;
    z-index: 5 !important;
  }

  .product-page .reference-product.bh-pdp .bh-gal__main,
  .product-page .reference-product.bh-pdp .bh-gal__track {
    border-radius: 0 !important;
  }

  .product-page .reference-product.bh-pdp .bh-gal__thumbs {
    gap: 10px !important;
    margin-top: 12px !important;
    padding: 2px 0 !important;
  }

  .product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb] {
    flex: 0 0 96px !important;
    width: 96px !important;
    height: 96px !important;
    min-width: 96px !important;
    min-height: 96px !important;
    border-radius: 2px !important;
  }

  .product-page .reference-product.bh-pdp .bh-gal__below {
    padding: 0 !important;
    margin-top: 14px !important;
  }

  .product-page .reference-product.bh-pdp .bh-gal__below .bh-more-btn {
    display: flex !important;
  }

  .product-page .reference-product.bh-pdp .bh-more-btn--mobile {
    display: none !important;
  }

  .product-page .reference-product.bh-pdp .bh-info {
    padding-top: 0 !important;
    max-width: 520px !important;
    grid-area: auto !important;
    align-self: start !important;
  }

  .product-page .reference-product.bh-pdp h1#produkt-titel.bh-title {
    font-size: 38px !important;
  }
}

/* ==========================================================================
   5. THE WAVE BAND SECTION (#vertrauen / .bh-band) — 1:1 Restwick
      Top wave + scrolling ticker + headline + auto-scrolling quote marquee + bottom wave
      Highlighted text, YELLOW stars (#FFD43B), and BLUE verified badge (#1689E8)
   ========================================================================== */
.bh-band-wrap {
  width: 100%;
  overflow: hidden;
  background: #FFFFFF;
}

.bh-wave {
  display: block;
  width: 100%;
  height: 46px;
}

.bh-band {
  background: var(--bh-y);
  color: #FFFFFF;
  overflow: hidden;
  padding: 4px 0 6px;
}

.bh-band .bh-tick {
  background: rgba(0, 0, 0, 0.14);
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  padding: 10px 0;
}

.bh-band .bh-tick__item {
  font-family: var(--bh-head);
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 0.03em;
  color: #FFFFFF;
}

.bh-band__title {
  font-family: var(--bh-head) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 1.18 !important;
  text-align: center !important;
  padding: 16px var(--bh-gutter) 18px !important;
  color: #FFFFFF !important;
  margin: 0 !important;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.22);
}

.bh-quotes {
  overflow: hidden;
  padding: 0 0 24px;
}

.bh-quotes__track {
  display: inline-flex;
  width: max-content;
  gap: 16px;
  animation: bh-marquee var(--bh-speed, 42s) linear infinite;
  padding-left: 16px;
  will-change: transform;
}

.bh-quotes:hover .bh-quotes__track {
  animation-play-state: paused;
}

.bh-q {
  flex: 0 0 296px;
  background: rgba(255, 255, 255, 0.22);
  border: 1.5px solid rgba(255, 255, 255, 0.48);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14);
  border-radius: 16px;
  padding: 16px 18px;
  margin: 0;
  white-space: normal;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.bh-q__text {
  font-size: 15.5px;
  line-height: 1.45;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0 0 12px;
  border: 0;
  padding: 0;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.14);
}

.bh-q__who {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  font-weight: 800;
  color: #FFFFFF;
}

.bh-q__who .bh-verified {
  flex: none;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.2));
}

.bh-q__who .bh-stars {
  display: inline-flex;
  gap: 2px;
  color: var(--bh-star) !important; /* #FFD43B yellow/gold stars! */
  margin-left: 3px;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.22));
}

@media (min-width: 990px) {
  .bh-band__title {
    font-size: 32px !important;
  }
  .bh-q {
    flex-basis: 370px;
  }
}

/* ==========================================================================
   6. VIDEOS IN „BLICKE ZIEHEN AUF JEDER ABFAHRT“ STYLE (#video-erfahrungen / .bh-testi)
      Matches Restwick's .bh-testi & .bh-tcard 1:1:
      - 1 card on mobile, 2 on tablet, 3 SIDE-BY-SIDE ON DESKTOP!
   ========================================================================== */
.bh-testi.bh-video-section {
  padding: 44px 0 40px !important;
  background: #FFFFFF !important;
}

.bh-sec-title {
  font-family: var(--bh-head) !important;
  font-size: 30px !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  text-align: center !important;
  color: var(--bh-k) !important;
  margin: 0 0 26px !important;
}

.bh-sec-title .handwritten-word {
  color: var(--bh-y) !important;
  font-style: normal !important;
}

.bh-sec-title .handwritten-word svg {
  display: none !important;
}

/* Container for the Restwick-style 3-up video slider */
.bh-video-section .community-feedback {
  max-width: var(--bh-max) !important;
  margin: 0 auto !important;
  padding: 0 var(--bh-gutter) !important;
}

.bh-video-section .community-feedback-card {
  max-width: var(--bh-max) !important;
  width: 100% !important;
  margin: 0 auto !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.bh-video-section .community-feedback-stage {
  display: flex !important;
  flex-direction: row !important;
  gap: 16px !important;
  position: relative !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
  padding: 4px 0 10px !important;
  border-radius: 18px !important;
  cursor: grab !important;
}

.bh-video-section .community-feedback-stage.is-dragging {
  cursor: grabbing !important;
  user-select: none !important;
}

.bh-video-section .community-feedback-stage::-webkit-scrollbar {
  display: none !important;
}

.bh-video-section .community-feedback-slide.bh-tcard,
.bh-video-section .community-feedback-slide.bh-tcard:not(.is-current),
.bh-video-section .community-feedback-slide.bh-tcard.is-current {
  position: relative !important;
  inset: auto !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  animation: none !important;
  scroll-snap-align: start !important;
  background: var(--bh-grey) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #EAE6DC !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05) !important;
}

@media (min-width: 700px) {
  .bh-video-section .community-feedback-slide.bh-tcard,
  .bh-video-section .community-feedback-slide.bh-tcard:not(.is-current),
  .bh-video-section .community-feedback-slide.bh-tcard.is-current {
    flex: 0 0 calc((100% - 16px) / 2) !important;
    width: calc((100% - 16px) / 2) !important;
  }
}

@media (min-width: 990px) {
  .bh-video-section .community-feedback-slide.bh-tcard,
  .bh-video-section .community-feedback-slide.bh-tcard:not(.is-current),
  .bh-video-section .community-feedback-slide.bh-tcard.is-current {
    flex: 0 0 calc((100% - 32px) / 3) !important;
    width: calc((100% - 32px) / 3) !important;
  }
}

.bh-video-section .community-film-frame.bh-tcard__media {
  position: relative !important;
  z-index: 4 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 9 / 13.5 !important;
  max-height: none !important;
  background: #111111 !important;
  border-radius: 18px 18px 0 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
}

.bh-video-section .community-film-frame.bh-tcard__media video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 25% !important;
  border-radius: 18px 18px 0 0 !important;
  display: block !important;
  cursor: pointer !important;
}

/* Center play button when video is paused */
.bh-video-section .film-play.bh-film-play {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: rgba(36, 76, 59, 0.88) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 2px solid rgba(255, 255, 255, 0.9) !important;
  color: #FFFFFF !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 6 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
  transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), background 0.2s ease !important;
}

.bh-video-section .community-film-frame.is-user-paused .film-play.bh-film-play {
  display: flex !important;
}

.bh-video-section .film-play.bh-film-play:hover {
  transform: translate(-50%, -50%) scale(1.1) !important;
  background: #244C3B !important;
}

/* Scrubber / timeline bar at bottom of video card:
   ONLY visible when user taps/clicks to pause, or during active scrubbing! */
.bh-film-scrubber {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 26px !important;
  display: flex !important;
  align-items: flex-end !important;
  padding: 0 10px 8px !important;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%) !important;
  z-index: 5 !important;
  cursor: pointer !important;
  user-select: none !important;
  touch-action: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.22s ease, visibility 0.22s ease !important;
}

.bh-video-section .community-film-frame.is-user-paused .bh-film-scrubber,
.bh-video-section .community-film-frame.has-scrubber-active .bh-film-scrubber {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.bh-film-scrubber__track {
  position: relative !important;
  width: 100% !important;
  height: 4px !important;
  background: rgba(255, 255, 255, 0.35) !important;
  border-radius: 999px !important;
  transition: height 0.15s ease !important;
}

.bh-film-scrubber:hover .bh-film-scrubber__track {
  height: 6px !important;
}

.bh-film-scrubber__fill {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  background: #B4C4B2 !important;
  border-radius: 999px !important;
  pointer-events: none !important;
}

.bh-film-scrubber__thumb {
  position: absolute !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 10px !important;
  height: 10px !important;
  background: #FFFFFF !important;
  border-radius: 50% !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.6) !important;
  pointer-events: none !important;
  transition: transform 0.12s ease !important;
}

.bh-film-scrubber:hover .bh-film-scrubber__thumb {
  transform: translate(-50%, -50%) scale(1.3) !important;
  background: #244C3B !important;
  border: 1.5px solid #FFFFFF !important;
}

/* Center 4-corner fullscreen icon inside .film-expand button */
.bh-video-section button.film-expand {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  border-radius: 50% !important;
  line-height: 1 !important;
}

.bh-video-section button.film-expand svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  margin: auto !important;
  flex: none !important;
}

.bh-video-section .community-feedback-copy.bh-tcard__body {
  position: relative !important;
  z-index: 1 !important;
  padding: 22px 20px 22px !important;
  text-align: center !important;
  background: var(--bh-grey) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  flex: 1 1 auto !important;
  gap: 0 !important;
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
}

.bh-video-section .community-feedback-stars {
  display: inline-flex !important;
  justify-content: center !important;
  margin: 0 0 6px !important;
}

.bh-video-section .community-feedback-stars .stars {
  justify-content: center !important;
}

.bh-tcard__h {
  font-family: var(--bh-head) !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: var(--bh-k) !important;
  margin: 6px 0 8px !important;
}

.bh-video-section .bh-tcard__text {
  font-size: 15.5px !important;
  line-height: 1.45 !important;
  color: var(--bh-text) !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
  font-style: normal !important;
  flex: 1 1 auto !important;
}

.bh-video-section .bh-tcard__name {
  width: 100% !important;
  font-weight: 800 !important;
  font-size: 14.5px !important;
  color: var(--bh-k) !important;
  border-top: 1px solid #E1DED4 !important;
  padding-top: 12px !important;
  margin: auto 0 0 !important;
}

.bh-video-section .bh-tcard__name cite {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  color: var(--bh-k) !important;
}

/* Slider Nav below card (< dots >) — 1:1 Restwick */
.bh-slider__nav,
.bh-video-section .community-feedback-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  margin-top: 18px !important;
}

.bh-video-section .video-feedback-dots {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
}

.bh-video-section .video-feedback-dots button {
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  min-height: 8px !important;
  border-radius: 50% !important;
  background: #D5D5D5 !important;
  border: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}

.bh-video-section .video-feedback-dots button::after {
  display: none !important;
}

.bh-video-section .video-feedback-dots button[aria-current="true"] {
  background: var(--bh-k) !important;
}

.bh-arrow {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  border: 1.5px solid var(--bh-line) !important;
  background: #FFFFFF !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--bh-k) !important;
  cursor: pointer !important;
}

@media (min-width: 990px) {
  .bh-sec-title {
    font-size: 38px !important;
  }
}

/* ==========================================================================
   6B. „WARUM PFOTENIVO?“ COMPARISON TABLE (#warum-pfotenivo / .bh-compare-section)
       Smooche-style comparison table with highlighted Pfotenivo column,
       light-green title accent, and centered vertical icon + small note cells
   ========================================================================== */
.bh-compare-section {
  padding: 48px 0 44px !important;
  background: #FAF9F5 !important;
  border-top: 1px solid #EAE8E0 !important;
  border-bottom: 1px solid #EAE8E0 !important;
}

.bh-compare-section #warum-pfotenivo-titel {
  font-size: clamp(32px, 4.6vw, 48px) !important;
  line-height: 1.08 !important;
}

.bh-compare-section #warum-pfotenivo-titel em {
  color: var(--bh-y) !important;
  font-size: 1.08em !important;
  font-style: normal !important;
}

.bh-compare-scroll {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-top: 8px;
}

.bh-compare-table {
  width: 100%;
  min-width: 720px;
  border-collapse: separate;
  border-spacing: 0;
  font-family: var(--bh-body);
  color: #111111;
}

.bh-compare-table thead th {
  vertical-align: top !important;
  padding: 16px 14px 14px !important;
  font-size: 15px;
  font-weight: 800;
  text-transform: none;
  letter-spacing: -0.01em;
  color: #111111;
  border-bottom: 2px solid #111111;
  text-align: center;
}

.bh-compare-table thead th.bh-compare-col-crit {
  text-align: left;
  width: 28%;
}

.bh-compare-table thead th.bh-compare-col-brand {
  width: 24%;
  padding: 16px 14px 14px !important;
  background: #244C3B !important;
  color: #FFFFFF !important;
  border-radius: 16px 16px 0 0;
  border-bottom: 2px solid #111111;
}

.bh-cmp-th-title {
  display: block;
  font-family: var(--bh-body);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  color: #111111;
}

.bh-compare-col-brand .bh-cmp-th-title {
  color: #FFFFFF !important;
}

.bh-cmp-th-sub {
  display: block;
  font-family: var(--bh-body);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  color: #666666;
  margin-top: 4px;
}

.bh-compare-table tbody th,
.bh-compare-table tbody td {
  padding: 18px 16px;
  border-bottom: 1px solid #E2E0D8;
  font-size: 16px;
  line-height: 1.4;
  vertical-align: middle;
}

.bh-compare-table tbody th {
  text-align: left;
  font-weight: 800;
  font-size: 16.5px;
  color: #111111;
}

.bh-compare-table tbody th strong {
  font-weight: 800;
  color: #111111;
}

.bh-compare-table tbody th em {
  display: inline-block;
  font-style: italic;
  font-weight: 600;
  color: #4A4A4A;
  font-size: 14.5px;
}

.bh-compare-table tbody td {
  text-align: center;
  color: #222222;
}

.bh-compare-table tbody td.bh-compare-col-brand {
  background: rgba(180, 196, 178, 0.35);
  font-weight: 800;
  color: #244C3B;
}

.bh-compare-table tbody tr:last-child td.bh-compare-col-brand {
  border-radius: 0 0 16px 16px;
  border-bottom: 0;
}

.bh-cmp-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
  width: 100%;
}

.bh-cmp-cell small {
  display: block;
  font-size: 13.5px;
  font-weight: 600;
  font-style: italic;
  line-height: 1.3;
  color: #4A4A4A;
  text-align: center;
}

.bh-compare-col-brand .bh-cmp-cell small {
  font-weight: 700;
  color: #244C3B;
}

.bh-cmp-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 900;
  line-height: 1;
  margin: 0;
  flex: none;
}

.bh-cmp-badge--yes {
  background: #244C3B;
  color: #FFFFFF;
}

.bh-cmp-badge--no {
  background: #FEE2E2;
  color: #DC2626;
}

.bh-cmp-badge--warn {
  background: #FEF3C7;
  color: #D97706;
}

/* ==========================================================================
   7. FAQ SECTION (#faq.bh-faq) — 1:1 Restwick white rounded accordion cards
   ========================================================================== */
.product-page .faq-brand.bh-faq {
  background: #FFFFFF !important;
  color: var(--bh-text) !important;
  padding: 24px 0 48px !important;
}

.product-page .faq-brand.bh-faq .faq-section {
  max-width: var(--bh-max) !important;
  margin: 0 auto !important;
  padding: 0 var(--bh-gutter) !important;
  display: block !important;
}

.product-page .faq-brand.bh-faq .section-heading {
  max-width: none !important;
  text-align: center !important;
  margin: 0 0 24px !important;
}

.product-page .faq-brand.bh-faq h2#faq-titel {
  color: var(--bh-k) !important;
  font-family: var(--bh-head) !important;
  font-size: 30px !important;
  font-weight: 400 !important;
  text-align: center !important;
  margin: 0 !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list {
  max-width: 760px !important;
  margin: 0 auto !important;
  display: grid !important;
  gap: 10px !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list details {
  border: 1.5px solid var(--bh-line) !important;
  border-radius: 14px !important;
  background: #FFFFFF !important;
  overflow: hidden !important;
  padding: 0 !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list details[open] {
  border-color: var(--bh-y) !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list summary {
  list-style: none !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 16px 18px !important;
  min-height: 0 !important;
  font-family: var(--bh-body) !important;
  font-weight: 800 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  color: var(--bh-k) !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list summary::-webkit-details-marker,
.product-page .faq-brand.bh-faq .bh-faq__list summary::after {
  display: none !important;
  content: none !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list summary .bh-ico {
  transition: transform 0.2s ease !important;
  color: var(--bh-k) !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list details[open] summary .bh-ico {
  transform: rotate(180deg) !important;
}

.product-page .faq-brand.bh-faq .bh-faq__a {
  padding: 0 18px 16px !important;
  font-size: 15.5px !important;
  line-height: 1.55 !important;
  color: #333333 !important;
}

.product-page .faq-brand.bh-faq .bh-faq__list details[open] .bh-faq__a {
  animation: bh-accordion-slide 0.25s cubic-bezier(0.22, 1, 0.36, 1) both !important;
}

.product-page .faq-brand.bh-faq .bh-faq__a p {
  color: #333333 !important;
  font-size: 15.5px !important;
  line-height: 1.55 !important;
  padding: 0 !important;
  margin: 0 0 8px !important;
}

.product-page .faq-brand.bh-faq .bh-faq__a p:last-child {
  margin-bottom: 0 !important;
}

.product-page .faq-brand.bh-faq .bh-faq__a a {
  color: var(--bh-y) !important;
  font-weight: 700 !important;
}

@media (min-width: 990px) {
  .product-page .faq-brand.bh-faq h2#faq-titel {
    font-size: 38px !important;
  }
}

/* ==========================================================================
   8. APPENDED PFOTENIVO LOWER SECTIONS
      - #kit-inhalt („Darf ich vorstellen: Brunos Bellen-Notfallkit“): MUCH LARGER FONT + BLACK BUTTON
      - #bruno-vergleich („Ein Einblick in Brunos Alltag“): ORIGINAL DARK FOREST GREEN LOOK
   ========================================================================== */
.product-page .kit-showcase.bh-kit-showcase {
  background: var(--bh-grey) !important;
  color: var(--bh-text) !important;
  padding: 28px 0 40px !important;
  border-top: 1px solid var(--bh-line) !important;
  border-bottom: 1px solid var(--bh-line) !important;
}

.product-page .kit-showcase .guide-feature,
.product-page .kit-showcase .bonus-section {
  border-color: var(--bh-line) !important;
}

.product-page .kit-showcase .guide-number,
.product-page .kit-showcase .bonus .eyebrow {
  color: var(--bh-y) !important;
  font-weight: 800 !important;
  font-size: 13.5px !important;
}

.product-page .kit-showcase .section-heading {
  max-width: 980px !important;
  width: 100% !important;
  margin: 0 auto 28px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.bh-eyebrow-pill {
  display: inline-block !important;
  font-family: var(--bh-body) !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #244C3B !important;
  background: #E4EAE1 !important;
  border: 1px solid rgba(36, 76, 59, 0.18) !important;
  padding: 4px 14px !important;
  border-radius: 999px !important;
  margin: 0 auto 12px !important;
}

.product-page .kit-showcase #kit-inhalt-titel {
  font-family: var(--bh-head) !important;
  font-size: clamp(30px, 4.8vw, 52px) !important;
  line-height: 1.08 !important;
  color: var(--bh-k) !important;
  text-align: center !important;
  width: 100% !important;
  margin: 0 auto !important;
}

.product-page .kit-showcase #kit-inhalt-titel .bh-kit-highlight {
  color: var(--bh-y) !important;
  position: relative !important;
  display: inline-block !important;
}

.product-page .kit-showcase .kit-showcase-description {
  font-size: clamp(14px, 1.8vw, 17px) !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  color: #555555 !important;
  margin: 10px auto 0 !important;
  text-align: center !important;
  max-width: 620px !important;
}

.product-page .kit-showcase .guide-copy h3 {
  font-family: var(--bh-head) !important;
  font-weight: 400 !important;
  font-size: clamp(24px, 3vw, 34px) !important;
  line-height: 1.15 !important;
  color: var(--bh-k) !important;
  margin: 6px 0 10px !important;
}

.product-page .kit-showcase .bonus h3 {
  font-family: var(--bh-head) !important;
  font-weight: 400 !important;
  font-size: 20px !important;
  color: var(--bh-k) !important;
}

.product-page .kit-showcase .guide-copy p {
  font-size: clamp(17px, 1.8vw, 19px) !important;
  line-height: 1.6 !important;
  font-weight: 500 !important;
  color: #2B2B2B !important;
}

.product-page .kit-showcase .bonus p:last-child,
.product-page .kit-showcase .section-heading > p:not(.eyebrow):not(.kit-showcase-description) {
  font-size: 16.5px !important;
  line-height: 1.55 !important;
  color: #333333 !important;
}

.product-page .kit-showcase .strip-controls button {
  color: var(--bh-k) !important;
  border-color: var(--bh-line) !important;
  background: #FFFFFF !important;
}

/* ==========================================================================
   8A-1. #maya-geschichte („Vom Tierheim zu echter Ruhe.“) — CLEAN EDITORIAL CARD
   ========================================================================== */
.product-page .maya-story.bh-story {
  max-width: var(--bh-max) !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 44px var(--bh-gutter) 48px !important;
  display: block !important;
  box-sizing: border-box !important;
}

.product-page .maya-story.bh-story .bh-story__card {
  background: #F4F4F0 !important;
  border: 1px solid #E2E0D8 !important;
  border-radius: 20px !important;
  padding: 22px 20px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 28px !important;
  align-items: center !important;
}

@media (min-width: 860px) {
  .product-page .maya-story.bh-story .bh-story__card {
    grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr) !important;
    gap: 44px !important;
    padding: 34px 38px !important;
  }
}

.product-page .maya-story.bh-story .bh-story__media {
  position: relative !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background: #233D2C !important;
}

.product-page .maya-story.bh-story .bh-story__media > img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 0.94 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.product-page .maya-story.bh-story .bh-story__copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  text-align: left !important;
}

.product-page .maya-story.bh-story .bh-story__copy .eyebrow {
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  color: var(--bh-y) !important;
  margin: 0 0 10px !important;
}

.product-page .maya-story.bh-story #maya-title {
  font-family: var(--bh-head) !important;
  font-size: clamp(28px, 3.8vw, 40px) !important;
  line-height: 1.08 !important;
  color: #111111 !important;
  margin: 0 0 14px !important;
}

.product-page .maya-story.bh-story #maya-title em {
  color: var(--bh-y) !important;
  font-style: normal !important;
}

.product-page .maya-story.bh-story .bh-story__text {
  margin: 0 0 12px !important;
  font-size: 16.5px !important;
  line-height: 1.55 !important;
  color: #2B2B2B !important;
  font-weight: 500 !important;
}

.product-page .maya-story.bh-story .bh-story__text strong {
  color: #111111 !important;
  font-weight: 800 !important;
}

.product-page .maya-story.bh-story .bh-story__tags {
  list-style: none !important;
  padding: 14px 0 0 !important;
  margin: 6px 0 20px !important;
  border-top: 1px solid #DCDAD0 !important;
  width: 100% !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 20px !important;
}

.product-page .maya-story.bh-story .bh-story__tags li {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: #111111 !important;
}

.product-page .maya-story.bh-story .bh-story__tags li svg {
  width: 22px !important;
  height: 22px !important;
  padding: 3px !important;
  border-radius: 50% !important;
  background: #B4C4B2 !important;
  color: #244C3B !important;
  box-sizing: border-box !important;
  flex: none !important;
}

.product-page .maya-story.bh-story .bh-story__foot {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}

.product-page .maya-story.bh-story .bh-link-pill {
  margin: 0 !important;
  padding: 12px 22px !important;
  border-radius: 12px !important;
  background: #111111 !important;
  color: #FFFFFF !important;
  font-family: var(--bh-head) !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: 0 3px 0 #000000 !important;
  transition: background 0.15s ease, transform 0.1s ease !important;
}

.product-page .maya-story.bh-story .bh-link-pill:hover {
  background: #262626 !important;
  color: #FFFFFF !important;
}

/* ==========================================================================
   8A-2. #bruno-vergleich („Ein Einblick in Brunos Alltag“) — CLEAN VORHER/NACHHER VIDEOS
   ========================================================================== */
.product-page .proof-section.bh-proof {
  position: relative !important;
  overflow: hidden !important;
  background: radial-gradient(ellipse at 20% 20%, rgba(180, 196, 178, 0.14), transparent 60%), linear-gradient(145deg, #1D3E30 0%, #244C3B 55%, #1A372B 100%) !important;
  color: #FAF4E6 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  padding: 52px 0 58px !important;
}

.product-page .proof-section.bh-proof .bh-proof__wrap {
  max-width: 900px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 var(--bh-gutter) !important;
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 2 !important;
}

.product-page .proof-section.bh-proof .bh-proof__head {
  max-width: 680px !important;
  margin: 0 auto 26px !important;
  text-align: center !important;
}

.product-page .proof-section.bh-proof #proof-title {
  color: #FFFFFF !important;
  font-family: var(--bh-head) !important;
  font-size: clamp(28px, 4.2vw, 42px) !important;
  line-height: 1.08 !important;
  margin: 0 !important;
}

.product-page .proof-section.bh-proof #proof-title em {
  color: #B4C4B2 !important;
  font-style: normal !important;
}

.product-page .proof-section.bh-proof .bh-sec-head p {
  color: rgba(255, 255, 255, 0.88) !important;
  font-size: 16.5px !important;
  line-height: 1.5 !important;
  margin: 10px auto 0 !important;
  max-width: 580px !important;
}

/* Side-by-Side Vorher / Nachher Cards */
.product-page .proof-section.bh-proof .proof-videos.bh-proof__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  max-width: 720px !important;
  margin: 0 auto !important;
}

@media (max-width: 620px) {
  .product-page .proof-section.bh-proof .proof-videos.bh-proof__grid {
    grid-template-columns: 1fr !important;
    max-width: 360px !important;
    gap: 18px !important;
  }
}

.product-page .proof-section.bh-proof .bh-proof-card {
  background: rgba(18, 36, 28, 0.82) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 18px !important;
  padding: 12px !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.25) !important;
}

.product-page .proof-section.bh-proof .bh-proof-card--after {
  background: rgba(28, 60, 46, 0.92) !important;
  border: 2px solid #B4C4B2 !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28), 0 0 0 3px rgba(180, 196, 178, 0.16) !important;
}

.product-page .proof-section.bh-proof figcaption.bh-proof-card__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 2px !important;
}

.product-page .proof-section.bh-proof .bh-proof-badge {
  display: inline-flex !important;
  align-items: center !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  font-family: var(--bh-head) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
}

.product-page .proof-section.bh-proof .bh-proof-badge--before {
  background: rgba(220, 38, 38, 0.24) !important;
  border: 1px solid rgba(248, 113, 113, 0.5) !important;
  color: #FECACA !important;
}

.product-page .proof-section.bh-proof .bh-proof-badge--after {
  background: #B4C4B2 !important;
  border: 1px solid #B4C4B2 !important;
  color: #244C3B !important;
}

.product-page .proof-section.bh-proof .bh-proof-context {
  font-family: var(--bh-body) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: rgba(255, 255, 255, 0.85) !important;
}

.product-page .proof-section.bh-proof .bh-proof-card__media {
  width: 100% !important;
  aspect-ratio: 9 / 14 !important;
  max-height: 450px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #0F1A14 !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.product-page .proof-section.bh-proof .bh-proof-card__media video {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 0 !important;
  background: #0F1A14 !important;
}

.product-page .proof-section.bh-proof .bh-proof__footer {
  margin-top: 26px !important;
  text-align: center !important;
}

.product-page .proof-section.bh-proof .bh-btn {
  background: #111111 !important;
  color: #FFFFFF !important;
  border: 1.5px solid rgba(255, 255, 255, 0.28) !important;
  max-width: 380px !important;
  margin: 0 auto !important;
}

.bh-sec-head {
  text-align: center !important;
  max-width: 720px !important;
  margin: 0 auto 28px !important;
}

.bh-sec-head .eyebrow {
  font-size: 12.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--bh-y) !important;
  margin: 0 0 8px !important;
}

.bh-h2 {
  font-family: var(--bh-head) !important;
  font-weight: 400 !important;
  font-size: clamp(28px, 4.2vw, 40px) !important;
  color: var(--bh-k) !important;
}

.bh-h2 em {
  font-family: var(--bh-head) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  color: var(--bh-y) !important;
}

.bh-sub {
  font-size: 17px !important;
  color: var(--bh-muted) !important;
  margin: 10px auto 0 !important;
}

.bh-showcase-cta,
.bh-guarantee__cta {
  max-width: 400px;
  margin: 24px auto 0;
}

.bh-link-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  padding: 10px 18px;
  border-radius: 999px;
  background: var(--bh-y-soft);
  color: var(--bh-y);
  font-weight: 800;
  font-size: 14.5px;
  text-decoration: none;
}

.bh-guarantee__chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 16px 0;
}

.bh-guarantee__chips span {
  background: var(--bh-y-soft);
  color: var(--bh-y);
  font-weight: 700;
  font-size: 13.5px;
  padding: 6px 12px;
  border-radius: 999px;
}

/* ==========================================================================
   8B. BOTTOM CUSTOMER REVIEWS (#bewertungen / .portal-reviews.bh-reviews-portal)
       Open 3-Column Review Grid + Overview Box + 8-Tile Customer Dog Photo Strip
   ========================================================================== */
.product-page .portal-reviews.bh-reviews-portal {
  background: #FAF9F5 !important;
  color: #111111 !important;
  padding: 52px var(--bh-gutter) 60px !important;
  max-width: 100% !important;
}

.product-page .portal-reviews.bh-reviews-portal > * {
  max-width: var(--bh-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.product-page .portal-reviews.bh-reviews-portal .reviews-heading.bh-sec-head {
  text-align: center !important;
  max-width: 720px !important;
  margin: 0 auto 28px !important;
}

.product-page .portal-reviews.bh-reviews-portal #review-title {
  color: #111111 !important;
  font-size: clamp(30px, 4.4vw, 44px) !important;
}

/* 3-Column Overview Card (.bh-rev-overview) */
.product-page .portal-reviews.bh-reviews-portal .portal-overview.bh-rev-overview {
  background: #FFFFFF !important;
  border: 1.5px solid #E5E4DE !important;
  border-radius: 18px !important;
  padding: 26px 28px !important;
  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.04) !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  align-items: center !important;
  margin: 0 auto 24px !important;
}

@media (min-width: 860px) {
  .product-page .portal-reviews.bh-reviews-portal .portal-overview.bh-rev-overview {
    grid-template-columns: 220px minmax(0, 1fr) 230px !important;
    gap: 32px !important;
  }
}

.product-page .portal-reviews.bh-reviews-portal .portal-score {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 6px !important;
}

.product-page .portal-reviews.bh-reviews-portal .portal-score > strong {
  font-family: var(--bh-head) !important;
  font-size: 64px !important;
  line-height: 1 !important;
  color: #111111 !important;
}

.product-page .portal-reviews.bh-reviews-portal .portal-score p {
  margin: 6px 0 0 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #333333 !important;
}

.product-page .portal-reviews.bh-reviews-portal .portal-bars {
  border-left: 1px solid #EAE8E0 !important;
  border-right: 1px solid #EAE8E0 !important;
  padding: 0 24px !important;
  display: grid !important;
  gap: 7px !important;
}

@media (max-width: 859px) {
  .product-page .portal-reviews.bh-reviews-portal .portal-bars {
    border: 0 !important;
    padding: 0 !important;
  }
}

.product-page .portal-reviews.bh-reviews-portal .review-bar {
  display: grid !important;
  grid-template-columns: 68px minmax(0, 1fr) 36px !important;
  align-items: center !important;
  gap: 12px !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 3px 6px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
}

.product-page .portal-reviews.bh-reviews-portal .review-bar[aria-pressed="true"] {
  background: #EEF6F0 !important;
}

.product-page .portal-reviews.bh-reviews-portal .review-bar-track {
  height: 10px !important;
  border-radius: 999px !important;
  background: #E8EAE6 !important;
  overflow: hidden !important;
}

.product-page .portal-reviews.bh-reviews-portal .review-bar-track > span {
  display: block !important;
  height: 100% !important;
  width: var(--share, 0%) !important;
  background: #6EA874 !important;
  border-radius: 999px !important;
  transform: scaleX(1) !important;
}

.product-page .portal-reviews.bh-reviews-portal .bh-rev-overview__cta {
  display: flex !important;
  justify-content: center !important;
}

.product-page .portal-reviews.bh-reviews-portal .bh-rev-write-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 280px !important;
  padding: 13px 22px !important;
  border-radius: 12px !important;
  background: #111111 !important;
  color: #FFFFFF !important;
  border: 1px solid #111111 !important;
  font-family: var(--bh-body) !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  transition: background 0.15s ease, transform 0.15s ease !important;
}

.product-page .portal-reviews.bh-reviews-portal .bh-rev-write-btn:hover {
  background: #2B2B2B !important;
  transform: translateY(-1px) !important;
}

.product-page .portal-reviews.bh-reviews-portal .bh-rev-write-btn span {
  color: #FFFFFF !important;
}

/* User-Scrollable Customer Video & Dog Photo Strip (.bh-rev-media-wrap) */
.bh-rev-media-wrap {
  width: 100% !important;
  margin: 0 auto 20px !important;
  position: relative !important;
}

.bh-rev-media-strip {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  overflow-x: auto !important;
  scroll-behavior: smooth !important;
  scroll-snap-type: x proximity !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  padding: 4px 2px !important;
  cursor: grab !important;
}

.bh-rev-media-strip::-webkit-scrollbar {
  display: none !important;
}

.bh-rev-media-strip:active {
  cursor: grabbing !important;
}

.bh-rev-photo-tile {
  position: relative !important;
  flex: 0 0 136px !important;
  width: 136px !important;
  height: 136px !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  cursor: pointer !important;
  background: #E5E4DE !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06) !important;
  scroll-snap-align: start !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.bh-rev-media-controls {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: 10px !important;
}

.bh-rev-media-btn-nav {
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  border: 1.5px solid #DCDCD6 !important;
  background: #FFFFFF !important;
  color: #111111 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  font-size: 18px !important;
  line-height: 1 !important;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
}

.bh-rev-media-btn-nav:hover {
  background: #111111 !important;
  border-color: #111111 !important;
  color: #FFFFFF !important;
}

.bh-rev-photo-tile img,
.bh-rev-photo-tile video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.28s ease !important;
}

.bh-rev-photo-tile:hover img,
.bh-rev-photo-tile:hover video {
  transform: scale(1.05) !important;
}

.bh-rev-video-badge {
  position: absolute !important;
  bottom: 8px !important;
  left: 8px !important;
  z-index: 2 !important;
  background: rgba(17, 17, 17, 0.78) !important;
  color: #FFFFFF !important;
  font-family: var(--bh-body) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  backdrop-filter: blur(4px) !important;
  pointer-events: none !important;
}

/* Filter & Sort Toolbar (.bh-rev-toolbar) */
.bh-rev-toolbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 auto 18px !important;
}

.bh-rev-toolbar__left {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

.bh-rev-sort {
  appearance: auto !important;
  padding: 9px 14px !important;
  border-radius: 10px !important;
  border: 1.5px solid #DCDCD6 !important;
  background: #FFFFFF !important;
  color: #111111 !important;
  font-family: var(--bh-body) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

.bh-rev-media-btn,
.bh-rev-reset-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 9px 14px !important;
  border-radius: 10px !important;
  border: 1.5px solid #DCDCD6 !important;
  background: #FFFFFF !important;
  color: #111111 !important;
  font-family: var(--bh-body) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

.bh-rev-media-btn[aria-pressed="true"] {
  border-color: #2E5A3C !important;
  background: #EEF6F0 !important;
  color: #183C2A !important;
}

.bh-rev-reset-btn[hidden],
.bh-rev-more-btn[hidden],
.bh-rev-less-btn[hidden] {
  display: none !important;
}

.bh-rev-status {
  margin: 0 !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #4A4A4A !important;
}

/* Open 3-Column Review Card Grid (.bh-rev-grid) */
.bh-rev-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  margin: 0 auto !important;
}

@media (min-width: 680px) {
  .bh-rev-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

@media (min-width: 1020px) {
  .bh-rev-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

@keyframes bh-side-in {
  0% {
    opacity: 0;
    transform: translateX(18px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.bh-rev-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E3DC !important;
  border-radius: 14px !important;
  padding: 16px 16px 14px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 10px !important;
  color: #111111 !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.bh-rev-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06) !important;
}

.bh-rev-card.is-revealing,
.bh-rev-card.is-inview {
  animation: bh-side-in 0.32s cubic-bezier(0.22, 1, 0.36, 1) both !important;
}

.bh-rev-card[hidden] {
  display: none !important;
}

.bh-rev-card__stars .stars {
  display: inline-flex !important;
  gap: 2px !important;
  transform: none !important;
}

.bh-rev-card__title {
  font-family: var(--bh-head) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  color: #111111 !important;
  margin: 6px 0 4px !important;
}

.bh-rev-card__text {
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #333333 !important;
  margin: 0 !important;
}

.bh-rev-card .review-photo {
  margin-top: 8px !important;
  width: 72px !important;
  height: 72px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 1px solid #DCDCD6 !important;
  padding: 0 !important;
  position: relative !important;
  cursor: pointer !important;
}

.bh-rev-card .review-photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.bh-rev-card__foot {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding-top: 10px !important;
  border-top: 1px solid #F0EFEA !important;
}

.bh-rev-card__foot .review-avatar,
.bh-rev-card__foot .review-initials {
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  flex: none !important;
}

.bh-rev-card__foot .review-initials {
  background: #F4F4F2 !important;
  color: #111111 !important;
  border: 1px solid #DCDCD6 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

.bh-rev-card__meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  min-width: 0 !important;
}

.bh-rev-card__author {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

.bh-rev-card__author strong {
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #111111 !important;
}

.bh-verified-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  padding: 2px 7px 2px 4px !important;
  border-radius: 999px !important;
  background: #EAF3FF !important;
  color: #135CB8 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

.bh-verified-pill span {
  color: #135CB8 !important;
}

.bh-rev-card__meta time {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: #777777 !important;
}

@keyframes bh-btn-pop {
  0% {
    opacity: 0;
    transform: translateX(10px) scale(0.95);
  }
  100% {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

.bh-rev-more-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 22px !important;
}

.bh-rev-more-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 12px 22px !important;
  border-radius: 12px !important;
  border: 1.5px solid #111111 !important;
  background: #FFFFFF !important;
  color: #111111 !important;
  font-family: var(--bh-body) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  transition: background 0.18s ease, transform 0.15s ease, box-shadow 0.18s ease !important;
}

.bh-rev-more-btn:hover {
  background: #F4F4F2 !important;
  transform: translateY(-1px) !important;
}

.bh-rev-less-mini {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 8px 16px !important;
  border-radius: 999px !important;
  border: 1.5px solid #D0CEC6 !important;
  background: #FFFFFF !important;
  color: #444444 !important;
  font-family: var(--bh-body) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease !important;
}

.bh-rev-less-mini:hover {
  background: #F4F4F2 !important;
  color: #111111 !important;
  border-color: #111111 !important;
}

.bh-rev-less-mini[hidden] {
  display: none !important;
}

svg.bh-verified {
  display: inline-block !important;
  vertical-align: middle !important;
  flex: none !important;
}

/* ==========================================================================
   9. FOOTER (.bh-footer-wrap) — 1:1 Restwick Wave + Brand Footer + Legal Accordion
   ========================================================================== */
.bh-footer-wrap {
  width: 100%;
  overflow: hidden;
  background: #FFFFFF;
}

.bh-footer-wave {
  display: block;
  width: 100%;
  height: 48px;
}

.site-footer.bh-footer {
  background: #244C3B !important;
  color: #FFFFFF !important;
  padding: 0 !important;
  border: 0 !important;
}

.bh-footer__in {
  max-width: var(--bh-max);
  margin: 0 auto;
  padding: 22px var(--bh-gutter) 16px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.bh-footer__brand .wordmark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--bh-head);
  font-size: 24px;
  font-weight: 900;
  color: #FFFFFF !important;
  text-decoration: none;
}

.bh-footer__brand .wordmark img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.3);
}

.bh-footer__claim {
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.9);
  margin: 10px 0 10px;
  max-width: 520px;
}

.bh-footer__trust {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font-weight: 800;
  font-size: 14px;
  color: #FFFFFF;
  margin: 0;
}

.bh-footer__trust .bh-stars {
  color: var(--bh-star);
  letter-spacing: 1px;
}

.bh-footer__nav {
  display: block;
}

.bh-footer .footer-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
  padding: 0;
  margin: 0;
  border: none;
}

.bh-footer .footer-links a {
  color: #FFFFFF !important;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
}

.bh-footer .footer-links a:hover {
  text-decoration: underline;
}

.bh-footer .footer-service-menu {
  position: relative;
}

.bh-footer .footer-service-menu summary {
  list-style: none;
  cursor: pointer;
  color: #FFFFFF !important;
  font-weight: 700;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.bh-footer .footer-service-menu summary::-webkit-details-marker {
  display: none;
}

.bh-footer .footer-service-menu summary::after {
  content: "▾";
  font-size: 12px;
}

.bh-footer .footer-service-menu > div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-top: 8px;
  padding: 8px 12px;
  background: rgba(0, 0, 0, 0.22);
  border-radius: 8px;
}

.bh-footer__bottom {
  max-width: var(--bh-max);
  margin: 0 auto;
  padding: 12px var(--bh-gutter) 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  text-align: center;
}

.bh-footer__copy {
  margin: 0;
  font-size: 12.5px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.78);
}

@media (min-width: 990px) {
  .bh-footer__in {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    padding: 24px var(--bh-gutter) 18px;
    gap: 32px;
  }
  .bh-footer__nav {
    display: flex;
    justify-content: flex-end;
  }
  .bh-footer .footer-links {
    justify-content: flex-end;
    gap: 14px 22px;
  }
}

/* ==========================================================================
   10. STICKY MOBILE BUY BAR (.bh-sticky) — 1:1 Restwick
   ========================================================================== */
.mobile-buy-bar.bh-sticky {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 40 !important;
  background: #FFFFFF !important;
  border-top: 1px solid #EAEAEA !important;
  box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.1) !important;
  padding: 10px var(--bh-gutter) calc(10px + env(safe-area-inset-bottom)) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  transform: translateY(115%) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.28s ease !important;
  will-change: transform, opacity !important;
}

.mobile-buy-bar.bh-sticky.is-visible {
  transform: translateY(0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.mobile-buy-bar.bh-sticky[hidden] {
  display: none !important;
}

.bh-sticky__info {
  flex: none;
  min-width: 0;
  line-height: 1;
}

.bh-sticky .mobile-price-pair {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
}

.bh-sticky .mobile-price-pair s {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #8E8E8E !important;
  text-decoration: line-through !important;
}

.bh-sticky .mobile-price-pair strong {
  font-family: var(--bh-head) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  color: #111111 !important;
  letter-spacing: -0.01em !important;
}

.bh-sticky .bh-sticky__btn {
  width: auto !important;
  min-height: 46px !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  flex: none !important;
}

@media (min-width: 990px) {
  .mobile-buy-bar.bh-sticky {
    display: none !important;
  }
}

/* ==========================================================================
   11. RESPONSIVE CLEANUP (Tablet / schmales Browserfenster / Handy)
   ========================================================================== */
/* Bewertungskarussell: Desktop links unter der Galerie, mobil unter dem Warenkorb */
.product-page .reference-product.bh-pdp .bh-upper-reviews-mobile {
  display: none !important;
}

@media (max-width: 859px) {
  .product-page .reference-product.bh-pdp .bh-gal__below {
    display: none !important;
  }

  .product-page .reference-product.bh-pdp .bh-upper-reviews-mobile {
    display: block !important;
    margin: 16px 0 0 !important;
  }

  .product-page .reference-product.bh-pdp .bh-upper-reviews-mobile .upper-reviews {
    margin: 0 !important;
    max-width: none !important;
    width: 100% !important;
  }
}

/* Thumbnails: Smooche style large preview squares with horizontal scroll */
.product-page .reference-product.bh-pdp .bh-gal__thumbs {
  display: flex !important;
  gap: 8px !important;
  margin-top: 10px !important;
  padding: 4px var(--bh-gutter) !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs::-webkit-scrollbar {
  display: none !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb] {
  flex: 0 0 88px !important;
  width: 88px !important;
  height: 88px !important;
  min-width: 88px !important;
  min-height: 88px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 2px !important;
  border: 1px solid #E5E3DC !important;
  background: #FAFAF8 !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
  opacity: 0.88 !important;
  transition: border-color 0.15s ease, opacity 0.15s ease !important;
  box-sizing: border-box !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb][aria-current="true"] {
  border: 2px solid #244C3B !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb] img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  padding: 0 !important;
  display: block !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb]:first-child {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #F3F2E8 !important;
}

.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb]:first-child img,
.product-page .reference-product.bh-pdp .bh-gal__thumbs button[data-gallery-thumb] .bh-thumb-slide1 img {
  width: 82% !important;
  height: 82% !important;
  max-width: 82% !important;
  max-height: 82% !important;
  margin: auto !important;
  object-fit: contain !important;
  padding: 0 !important;
}

/* Header auf Handys ein My kompakter */
@media (max-width: 600px) {
  .site-header.bh-header .bh-header__in {
    height: 52px !important;
    padding: 0 8px !important;
  }
  .site-header.bh-header .wordmark {
    font-size: 18px !important;
    gap: 6px !important;
  }
  .site-header.bh-header .wordmark img {
    width: 28px !important;
    height: 28px !important;
  }
  .site-header.bh-header .wordmark svg {
    width: 17px !important;
    height: 17px !important;
  }
  .bh-iconbtn,
  .site-header.bh-header .mobile-menu > summary,
  .site-header.bh-header .header-cart {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
  }
  .site-header.bh-header .header-cart svg {
    width: 21px !important;
    height: 21px !important;
    min-width: 21px !important;
    min-height: 21px !important;
  }
}

/* Slide 1: Mobil Clean & Gross ohne verdeckende Badges */
@media (max-width: 600px) {
  .product-page .reference-product.bh-pdp .gallery-slide:first-child {
    padding: 38px 6px 28px !important;
  }
  .product-page .reference-product.bh-pdp .gallery-slide .kit-assembly {
    margin-top: 18px !important;
    width: 98% !important;
  }
}

/* Vergleichstabelle: Auf Mobilgeräten 100% Breite, einzeilige Spalten, alle Badges auf gleicher Ebene mittig */
@media (max-width: 768px) {
  .bh-compare-scroll {
    overflow-x: visible !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    scroll-snap-type: none !important;
  }
  .bh-compare-table {
    min-width: 0 !important;
    width: 100% !important;
    table-layout: fixed !important;
  }
  .bh-compare-table thead th {
    padding: 10px 3px 8px !important;
    vertical-align: top !important;
    text-align: center !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
  }
  .bh-compare-table thead th.bh-compare-col-crit {
    width: 32% !important;
    font-size: 11px !important;
    text-align: left !important;
    padding-left: 6px !important;
  }
  .bh-compare-table thead th.bh-compare-col-brand {
    width: 22% !important;
    padding: 10px 3px 8px !important;
    border-radius: 12px 12px 0 0 !important;
    background: #244C3B !important;
    color: #FFFFFF !important;
  }
  .bh-compare-table thead th:nth-child(3) {
    width: 23% !important;
  }
  .bh-compare-table thead th:nth-child(4) {
    width: 23% !important;
  }
  .bh-cmp-th-title {
    font-size: 11.5px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }
  .bh-cmp-th-sub {
    font-size: 9px !important;
    font-weight: 500 !important;
    color: #666666 !important;
    margin-top: 2px !important;
    white-space: nowrap !important;
  }
  .bh-compare-table tbody th {
    vertical-align: top !important;
    padding: 13px 4px 10px 6px !important;
    font-size: 11px !important;
    line-height: 1.22 !important;
    word-break: break-word !important;
    hyphens: auto !important;
  }
  .bh-compare-table tbody th strong {
    font-size: 11.5px !important;
    font-weight: 750 !important;
    display: block !important;
  }
  .bh-compare-table tbody th small {
    display: block !important;
    font-size: 9.5px !important;
    font-weight: 500 !important;
    color: #666666 !important;
    margin-top: 2px !important;
  }
  .bh-compare-table tbody td {
    vertical-align: top !important;
    padding: 13px 2px 10px !important;
    text-align: center !important;
  }
  .bh-cmp-cell {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 4px !important;
    width: 100% !important;
    margin: 0 auto !important;
  }
  .bh-cmp-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
    margin: 0 auto !important;
  }
  .bh-cmp-cell small {
    display: block !important;
    font-size: 9px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    color: #555555 !important;
    margin: 0 !important;
    padding: 0 1px !important;
    word-break: break-word !important;
  }
  .bh-compare-col-brand .bh-cmp-cell small {
    color: #244C3B !important;
    font-weight: 750 !important;
  }
}

/* ==========================================================================
   COOKIE BANNER (.consent-banner.bh-consent) — Minimal, Discreet, Sharp
   ========================================================================== */
.consent-banner,
.consent-banner.bh-consent {
  position: fixed !important;
  bottom: 20px !important;
  left: 20px !important;
  right: auto !important;
  max-width: 380px !important;
  width: calc(100% - 40px) !important;
  background: #FFFFFF !important;
  border: 1px solid #E5E3DC !important;
  border-radius: 4px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important;
  padding: 16px 18px !important;
  z-index: 9999 !important;
  box-sizing: border-box !important;
  font-family: var(--bh-body) !important;
  margin: 0 !important;
}

.consent-banner[hidden] {
  display: none !important;
}

.consent-banner strong {
  display: block !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin-bottom: 5px !important;
  line-height: 1.3 !important;
}

.consent-banner p {
  font-size: 12px !important;
  line-height: 1.45 !important;
  color: #555555 !important;
  margin: 0 0 14px 0 !important;
}

.consent-banner p a {
  color: #111111 !important;
  text-decoration: underline !important;
  font-weight: 600 !important;
}

.consent-banner .consent-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin: 0 !important;
}

.consent-banner .consent-actions button,
.consent-banner .consent-actions .bh-consent__btn {
  min-height: 38px !important;
  height: 38px !important;
  padding: 0 10px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease !important;
  line-height: 1 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

.consent-banner .consent-actions button.primary,
.consent-banner .consent-actions .bh-consent__btn--allow {
  background: #111111 !important;
  color: #FFFFFF !important;
  border: 1px solid #111111 !important;
}

.consent-banner .consent-actions button.primary:hover,
.consent-banner .consent-actions .bh-consent__btn--allow:hover {
  background: #2B2B2B !important;
  border-color: #2B2B2B !important;
}

.consent-banner .consent-actions button.secondary,
.consent-banner .consent-actions .bh-consent__btn--deny {
  background: #FFFFFF !important;
  color: #222222 !important;
  border: 1px solid #D0CEC6 !important;
}

.consent-banner .consent-actions button.secondary:hover,
.consent-banner .consent-actions .bh-consent__btn--deny:hover {
  background: #F4F4F2 !important;
  border-color: #B5B3AA !important;
  color: #111111 !important;
}

@media (max-width: 600px) {
  .consent-banner,
  .consent-banner.bh-consent {
    bottom: 12px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
    padding: 14px 14px !important;
  }
}

/* ==========================================================================
   TIER BOX REFINEMENT (Mobil ein My kleiner & sauber linksbündig)
   ========================================================================== */
.bh-tier__radio {
  display: none !important;
}

.bh-tier__head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 14px 14px 10px !important;
}

.bh-tier__name {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}

.bh-tier__price {
  text-align: right !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

@media (max-width: 600px) {
  .bh-tier__head {
    padding: 12px 10px 8px !important;
    gap: 8px !important;
  }
  .bh-tier__title {
    font-size: 15.5px !important;
  }
  .bh-badge {
    font-size: 9.5px !important;
    padding: 2.5px 5px !important;
  }
  .bh-tier__now {
    font-size: 20px !important;
  }
  .bh-tier__was {
    font-size: 12px !important;
  }
  .bh-tier__body {
    padding: 0 10px 10px !important;
  }
  .bh-tier__body .kit-summary-main span {
    font-size: 12.5px !important;
  }
  .bh-kit-box__row {
    padding: 8px 10px !important;
  }
  .bh-kit-box__included {
    font-size: 10px !important;
    padding: 2.5px 6px !important;
  }
  .bh-tier__body .kit-summary-extra strong {
    font-size: 12.5px !important;
  }
  .bh-free-pill {
    font-size: 9px !important;
    padding: 2px 5px !important;
  }
  .bh-limit-tag {
    font-size: 8.5px !important;
  }
}
