.px-teaser {
  position: relative;
  container-type: inline-size;
}
.px-teaser-inner {
  width: var(--baseWidth);
  max-width: var(--maxWidth);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 35px;
}
.px-teaser-inner .item {
  position: relative;
  box-shadow: 0 2px 15px 0 rgba(var(--contrastColorRGB), 0.1);
  overflow: hidden;
  background-color: var(--contrastColorInverted);
}
.px-teaser-inner .item a.full-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.px-teaser-inner .item .image {
  overflow: hidden;
  width: 100%;
  height: 270px;
  max-height: 270px;
}
.px-teaser-inner .item .image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.px-teaser-inner .item .image.image-fullsize_none img {
  object-fit: contain;
  max-height: 270px;
}
.px-teaser-inner .item .content {
  padding: 40px;
  color: var(--fontColor);
}
@container (width < 768px) {
  .px-teaser-inner .item .content {
    padding: 20px;
  }
}
.px-teaser-inner .item .content.has-link {
  padding: 40px 40px 70px;
}
@container (width < 768px) {
  .px-teaser-inner .item .content.has-link {
    padding: 20px;
  }
}
.px-teaser-inner .item .content .wp-block-button {
  position: absolute;
  bottom: 30px;
  left: 40px;
}
@container (width < 768px) {
  .px-teaser-inner .item .content .wp-block-button {
    position: relative;
    bottom: auto;
    left: auto;
    margin-top: 20px;
  }
}
.px-teaser-inner .item:hover .content .wp-block-button.is-style-arrow a.wp-block-button__link:not(.has-text-color), .px-teaser-inner .item:hover .content .wp-block-button.is-style-arrow .wp-block-button.is-style-arrow > .wp-block-button__link:not(.has-text-color) {
  color: var(--mainColor);
}
.px-teaser-inner .item:hover .content .wp-block-button.is-style-arrow a.wp-block-button__link:not(.has-text-color)::after, .px-teaser-inner .item:hover .content .wp-block-button.is-style-arrow .wp-block-button.is-style-arrow > .wp-block-button__link:not(.has-text-color)::after {
  margin-left: 20px;
  background-color: var(--mainColor);
}
.fl .px-teaser .px-teaser-inner {
  width: 100%;
}
