/* ===================================================
   BM HERO-BANNER-SLIDER
   =================================================== */

.bm-hero-slider-wrap {
  width: 100% !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
  margin-bottom: 0 !important;
}

/* Swiper Container */
.bm-hero-swiper {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  position: relative !important;
}

/* Slide */
.bm-hero-slide {
  min-height: 420px !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Content (zentriert) */
.bm-hero-content {
  position: relative !important;
  z-index: 2 !important;
  text-align: center !important;
  padding: 40px 60px !important;
  max-width: 700px !important;
  font-family: 'Poppins', sans-serif !important;
}

/* Badge */
.bm-hero-badge {
  display: inline-block !important;
  background: rgba(255,255,255,0.25) !important;
  color: #fff !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  padding: 4px 14px !important;
  border-radius: 20px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin-bottom: 14px !important;
  border: 1px solid rgba(255,255,255,0.4) !important;
}

/* Titel */
.bm-hero-title {
  font-family: 'Poppins', sans-serif !important;
  font-size: 2.8rem !important;
  font-weight: 800 !important;
  color: #fff !important;
  margin: 0 0 12px !important;
  line-height: 1.2 !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
}

/* Untertitel */
.bm-hero-sub {
  font-family: 'Poppins', sans-serif !important;
  font-size: 1.1rem !important;
  color: rgba(255,255,255,0.9) !important;
  margin: 0 0 28px !important;
  line-height: 1.6 !important;
}

/* CTA-Button */
.bm-hero-btn {
  display: inline-block !important;
  background: #fff !important;
  color: #1a2e52 !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  padding: 14px 36px !important;
  border-radius: 30px !important;
  text-decoration: none !important;
  letter-spacing: 0.3px !important;
  transition: background 0.2s, color 0.2s !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.15) !important;
}
.bm-hero-btn:hover {
  background: #1a2e52 !important;
  color: #fff !important;
}

/* Pfeil-Buttons */
.bm-hero-prev,
.bm-hero-next {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 10 !important;
  width: 40px !important;
  height: 40px !important;
  background: rgba(255,255,255,0.85) !important;
  border: none !important;
  border-radius: 50% !important;
  color: #1a2e52 !important;
  font-size: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background 0.15s !important;
  user-select: none !important;
}
.bm-hero-prev { left: 14px !important; }
.bm-hero-next { right: 14px !important; }
.bm-hero-prev:hover,
.bm-hero-next:hover {
  background: #fff !important;
  color: #c8102e !important;
}

/* Pagination Dots */
.bm-hero-pagination {
  position: absolute !important;
  bottom: 14px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 10 !important;
}
.bm-hero-pagination .swiper-pagination-bullet {
  background: rgba(255,255,255,0.6) !important;
  opacity: 1 !important;
  width: 8px !important;
  height: 8px !important;
  margin: 0 4px !important;
  transition: background 0.2s !important;
}
.bm-hero-pagination .swiper-pagination-bullet-active {
  background: #fff !important;
}

/* ===================================================
   KATEGORIE-SCHNELLNAVIGATION
   =================================================== */

.bm-cat-quicknav {
  width: 100% !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
  margin: 16px 0 32px !important;
}

.bm-cat-quicknav-inner {
  max-width: 100% !important;
  margin: 0 auto !important;
  display: flex !important;
  gap: 12px !important;
  justify-content: center !important;
}

.bm-cat-quicknav-item {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 18px 12px !important;
  background: #fff !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  color: #1a2e52 !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  transition: box-shadow 0.2s, border-color 0.2s, transform 0.15s !important;
  min-width: 0 !important;
}
.bm-cat-quicknav-item:hover {
  box-shadow: 0 4px 16px rgba(26,46,82,0.13) !important;
  border-color: #1a2e52 !important;
  transform: translateY(-2px) !important;
  color: #c8102e !important;
  text-decoration: none !important;
}

.bm-cat-icon {
  font-size: 2rem !important;
  line-height: 1 !important;
}

.bm-cat-name {
  white-space: nowrap !important;
}

/* Mobile */
@media (max-width: 700px) {
  .bm-hero-slide {
    min-height: 260px !important;
  }
  .bm-hero-title {
    font-size: 1.8rem !important;
  }
  .bm-hero-sub {
    font-size: 0.95rem !important;
  }
  .bm-hero-content {
    padding: 24px 20px !important;
  }
  .bm-hero-btn {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
  }
  .bm-cat-quicknav-inner {
    flex-wrap: wrap !important;
    gap: 8px !important;
  }
  .bm-cat-quicknav-item {
    flex: 1 1 calc(33.33% - 8px) !important;
    padding: 12px 8px !important;
  }
  .bm-cat-icon {
    font-size: 1.5rem !important;
  }
  .bm-cat-name {
    font-size: 0.72rem !important;
  }
}
