.project-teaser { padding: 8px 0 0; }
.project-teaser__grid { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 32px; margin: 0; padding: 0; list-style: none; }
.project-teaser__grid > li[hidden] { display: none !important; }
.project-teaser__card { display: block; color: inherit; text-decoration: none !important; }
.project-teaser__card:after { display: none !important; }
.project-teaser__img { aspect-ratio: 16 / 10; overflow: hidden; background: #222; }
.project-teaser__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 240ms ease-in-out; }
.project-teaser__card:hover .project-teaser__img img, .project-teaser__card:focus-visible .project-teaser__img img { transform: scale(1.05); }
.project-teaser__title { font-family: 'Nexa', Helvetica, Arial, sans-serif; font-weight: 700; font-size: 1.25rem; line-height: 1.25; margin: 16px 0 8px !important; color: inherit; }
.project-teaser__text { font-size: 1rem; line-height: 1.5; margin: 0; color: inherit; opacity: .85; }
.project-teaser__more { margin-top: 32px; }
/* Tablet: zwei nebeneinander */
@media screen and (min-width: 560px) and (max-width: 989px) { .project-teaser__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } }
/* Mobil: kompakte Zeile – Bild links (120px), Titel und Text rechts, Text auf 3 Zeilen gekürzt */
@media screen and (max-width: 559px) {
  .project-teaser__grid { grid-template-columns: 1fr; gap: 20px; }
  .project-teaser__card { display: grid; grid-template-columns: 120px 1fr; column-gap: 16px; align-items: start; }
  .project-teaser__img { aspect-ratio: 1 / 1; grid-row: 1 / span 2; }
  .project-teaser__title { grid-column: 2; font-size: 1rem; margin: 0 0 4px !important; }
  .project-teaser__text { grid-column: 2; font-size: .875rem; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
}
