/* Stage 2 UX – Die Hörberatung: zentrale Lesbarkeit, ruhige CTA-Hierarchie und hochwertiger Ratgeber-Editorialstil. */
:root {
  --hb-s2-ink: #17284d;
  --hb-s2-muted: #526072;
  --hb-s2-paper: #ffffff;
  --hb-s2-soft: #f6f7fa;
  --hb-s2-bordeaux: #a1012c;
  --hb-s2-gold: #b59a54;
  --hb-s2-border: rgba(23, 40, 77, 0.12);
}

/* Ein geöffneter Service-Dialog hat Vorrang vor weiteren schwebenden Werbe- oder Chat-Einstiegen. */
body.hoerlotze-open .nl-float,
body.hoerlotze-open .hb-whatsapp-fab,
body.hoerlotze-open [href*="wa.me"],
body.hoerlotze-open [aria-label*="WhatsApp"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

#hoerlotze-live-host {
  z-index: 2147483000 !important;
}

#hoerlotze-live-host .hlz-panel {
  box-shadow: 0 18px 55px rgba(18, 32, 59, 0.26) !important;
}

.hb-rg-card:focus-visible,
.hb-media-cta:focus-visible,
.hb-media-text-link:focus-visible,
#hoerlotze-live-host button:focus-visible {
  outline: 3px solid var(--hb-s2-gold) !important;
  outline-offset: 3px !important;
}

/* Editoriale Ratgeberübersicht: klare Auswahl zuerst, vollständige Sammlung danach. */
.hb-rg-featured-wrap {
  border-top: 1px solid var(--hb-s2-border);
  margin-top: 2.25rem;
  padding-top: 2.25rem;
}

.hb-rg-feat-sub {
  color: var(--hb-s2-muted) !important;
  font-size: 1.06rem !important;
  line-height: 1.55 !important;
  max-width: 40rem;
}

.hb-rg-card {
  box-shadow: none !important;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

.hb-rg-card:hover {
  border-color: rgba(161, 1, 44, .38) !important;
  box-shadow: 0 12px 30px rgba(23, 40, 77, .09) !important;
  transform: translateY(-2px);
}

.hb-rg-card-title {
  color: var(--hb-s2-ink) !important;
  line-height: 1.18 !important;
}

.hb-rg-card-teaser {
  color: var(--hb-s2-muted) !important;
  line-height: 1.58 !important;
}

/* Home-Videoeinstieg: ein klarer Hauptimpuls statt zweier gleichwertiger Rahmenbuttons. */
.hb-media-bridge {
  align-items: center !important;
  background: var(--hb-s2-paper) !important;
  border: 1px solid var(--hb-s2-border) !important;
  box-shadow: 0 12px 35px rgba(23, 40, 77, .08) !important;
}

.hb-media-bridge .hb-media-kicker {
  color: var(--hb-s2-bordeaux) !important;
}

.hb-media-bridge .hb-media-lead {
  color: var(--hb-s2-muted) !important;
  font-size: 1.125rem !important;
  line-height: 1.6 !important;
  max-width: 39rem;
}

.hb-media-bridge-visual {
  overflow: hidden;
}

.hb-media-bridge-visual img {
  display: block;
  width: 100%;
}

@media (max-width: 768px) {
  /* Ein Hauptziel je mobiles Bildschirmfenster: Der Ratgeberlink bleibt in der Navigation erreichbar. */
  .nl-float { display: none !important; }

  html.hb-ratgeber-standard-active main p,
  html.hb-ratgeber-standard-active #root main p,
  html.hb-ratgeber-standard-active .hb-ratgeber-lead,
  html.hb-ratgeber-standard-active .hb-ratgeber-native-lead {
    font-size: 1.125rem !important;
    line-height: 1.65 !important;
    max-width: 38ch !important;
  }

  html.hb-ratgeber-standard-active main h2,
  html.hb-ratgeber-standard-active #root main h2 {
    font-size: clamp(1.55rem, 6.6vw, 1.95rem) !important;
    line-height: 1.18 !important;
    margin-top: 2.7rem !important;
    max-width: 19ch !important;
  }

  html.hb-ratgeber-standard-active .hb-ratgeber-reading-guide {
    background: var(--hb-s2-paper);
    border: 1px solid var(--hb-s2-border);
    border-radius: .85rem;
    margin: 1.1rem 0 1.65rem !important;
    padding: .75rem !important;
  }

  html.hb-ratgeber-standard-active .hb-ratgeber-reading-guide-label {
    display: block;
    padding-bottom: .25rem;
    width: 100%;
  }

  html.hb-ratgeber-standard-active .hb-ratgeber-comparison-table tr {
    box-shadow: 0 5px 16px rgba(23, 40, 77, .06);
  }

  .hb-rg-featured-wrap {
    margin-top: 1.6rem;
    padding-top: 1.6rem;
  }

  .hb-rg-card {
    min-height: 12.5rem;
    padding: 1.2rem !important;
  }

  .hb-rg-card-title {
    font-size: 1.28rem !important;
  }

  .hb-rg-card-teaser {
    font-size: 1rem !important;
    line-height: 1.55 !important;
  }

  .hb-media-bridge {
    border-radius: 1rem !important;
    gap: 1.25rem !important;
    padding: 1.25rem !important;
  }

  .hb-media-bridge h2 {
    color: var(--hb-s2-ink) !important;
    font-size: clamp(1.7rem, 7.8vw, 2.15rem) !important;
    line-height: 1.14 !important;
    max-width: 18ch !important;
  }

  .hb-media-bridge .hb-media-links {
    display: grid !important;
    gap: .7rem !important;
  }

  .hb-media-bridge .hb-media-text-link:first-child {
    align-items: center;
    background: var(--hb-s2-bordeaux);
    border: 1px solid var(--hb-s2-bordeaux);
    border-radius: .7rem;
    color: #fff !important;
    display: flex;
    font-size: 1.05rem;
    font-weight: 700;
    justify-content: center;
    min-height: 3.2rem;
    padding: .7rem 1rem;
    text-align: center;
    text-decoration: none;
  }

  .hb-media-bridge .hb-media-text-link:nth-child(2) {
    color: var(--hb-s2-ink) !important;
    font-size: 1rem;
    font-weight: 700;
    padding: .45rem .2rem;
  }

  #hoerlotze-live-host {
    bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
    right: 12px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hb-rg-card { transition: none !important; }
}
