.cta-leiste{
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 900;
  display: none; align-items: center; gap: 12px;
  padding: 11px var(--pad, 16px) calc(11px + env(safe-area-inset-bottom));
  background: var(--flaeche-leiste, rgba(255,255,255,.97));
  border-top: 1px solid var(--linie, rgba(0,0,0,.12));
  box-shadow: 0 -4px 20px rgba(16,24,32,.1);

  transform: translateY(100%);
  transition: transform 380ms cubic-bezier(.32,.72,0,1);
}
.cta-leiste.is-visible{ transform: translateY(0); }

.cta-leiste__text{ flex: 1; min-width: 0; line-height: 1.3; }
.cta-leiste__text b{ display: block; font-size: .95rem; }
.cta-leiste__text span{ display: block; font-size: .78rem; opacity: .75; }
.cta-leiste .btn{ flex: none; min-height: 44px; display: inline-flex; align-items: center; }

@media (max-width: 860px){
  .cta-leiste{ display: flex; }

  body.hat-cta-leiste{ padding-bottom: 120px; }
}
@media (prefers-reduced-motion: reduce){
  .cta-leiste{ transition: none; }
}

.brotkrumen{ margin: 0 0 14px; }
.brotkrumen ol{
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px;
  font-size: .82rem; opacity: .8;
}
.brotkrumen li{ display: flex; align-items: center; gap: 6px; }
.brotkrumen li + li::before{ content: "\203A"; opacity: .6; }
.brotkrumen a{ color: inherit; text-decoration: none; border-bottom: 1px solid transparent; }
.brotkrumen a:hover{ border-bottom-color: currentColor; }
.brotkrumen [aria-current="page"]{ opacity: 1; font-weight: 500; }

.portraet{ object-fit: cover; object-position: center top; }
