/* === PRESSBAR: fix gegen weißen Streifen + Layout === */

/* eigene Stacking-Context, über dem Hero-Overlay */
#pressbar{
  position: relative;
  z-index: 50;          /* hoch genug über Hero-Pseudo/Badges */
  isolation: isolate;   /* eigener Stacking-Context */
}

/* deckende Fläche – NICHT transparent, damit nichts vom Hero durchscheint */
#pressbar::before{
  content:"";
  position:absolute;
  inset:0;
  background: transparent !important;
  pointer-events:none;
  z-index: 0;                   /* unter Inhalt der Pressbar */
}

/* innere Wrapper sicher transparent halten */
#pressbar .container,
#pressbar .pressbar-grid,
#pressbar .press-logos,
#pressbar .press-logo{
  background: transparent !important;
  position: relative;
  z-index: 1;                   /* über der Fläche */
}



/* Abstand kompakt */
.pressbar--compact{
  margin-top: clamp(20px, 1.8vh, 20px);
  padding: 30px 0 10px;
}

/* Grid + Titel */
.pressbar-grid{ display:grid; grid-template-columns:fr; row-gap:6px; align-items:center; }
#pressbar .pressbar-title{
  margin:0; font-size:clamp(24px,1.35vw,32px); line-height:1; font-weight:600;
  text-align:left !important; color:#82374b;
}

/* Logos */
#pressbar .press-logos{ display:flex; align-items:center; gap:clamp(8px,1.2vw,16px); padding:0; flex-wrap:wrap; }
#pressbar .press-logo{ line-height:0; }
#pressbar .press-logo img{
  height:clamp(40px,3.2vw,60px); width:auto; display:block;
  filter:grayscale(1) contrast(1.05) brightness(.92);
  opacity:.92; transition:filter .2s ease, opacity .2s ease, transform .2s ease;
}
#pressbar .press-logo a:focus-visible img,
#pressbar .press-logo:hover img{ filter:none; opacity:1; transform:translateY(-1px); }

/* Desktop: eine Zeile + größer */
@media (min-width: 992px){
  .pressbar-grid{ grid-template-columns:minmax(220px,300px) fr; column-gap:clamp(10px,1.6vw,22px); }
  #pressbar .press-logos{ flex-wrap:nowrap; }
  #pressbar .press-logo img{ height:80px; }
}

/* sehr schmale Screens: horizontales Scrollen */
@media (max-width: 420px){
  #pressbar .press-logos{ overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:2px; }
  #pressbar .press-logo{ scroll-snap-align:center; }
}

/* kleiner Abstand vor dem Überblick-Block */
#leistungen > .container > h2{ margin-top: clamp(10px, 1.2vw, 16px); }

/* Badges bewusst darunter halten */
.badgegreen, .badgeclimate{ z-index: 1 !important; }

/* Presse-Logos: Mobile = 3 pro Reihe */
@media (max-width: 768px){
  #pressbar .press-logos{
    display: grid;
    grid-template-columns: repeat(3, 1fr);  /* 3 Spalten */
    gap: 12px 16px;                          /* Abstand */
    align-items: center;
    justify-items: center;
  }
  #pressbar .press-logo{ margin: 0; }
  #pressbar .press-logo img{
    max-height: 36px;   /* Logo-Höhe fürs Handy */
    width: auto;
    height: auto;
  }
}

/* Optional: Tablet/Desk fein justieren */
@media (min-width: 769px) and (max-width: 1199px){
  #pressbar .press-logos{ grid-template-columns: repeat(5, 1fr); }
  #pressbar .press-logo img{ max-height: 80px; }
}
@media (min-width: 1200px){
  #pressbar .press-logos{ grid-template-columns: repeat(6, 1fr); }
  #pressbar .press-logo img{ max-height: 84px; }
}