/*
 * @file
 * Teaser styling.
 */

.teaser {
  position: relative; /* Anchor after pseudo-element. */
  display: flex;
  padding-block: var(--spacing-l);

  &::after {
    position: absolute;
    inset-block-end: 0;
    width: var(--spacing-l);
    height: 0;
    content: "";

    /* Intentionally not using CSS logical properties. */
    border-top: solid 2px #ccc;
  }
}

.teaser__image {
  display: block;
  flex: 0 0 150px;
  aspect-ratio: 1;
  object-fit: cover;
}

.teaser__content,
.teaser__content-wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-s);
}

.teaser__meta {
  font-size: 14px;
}

.teaser__title {
  margin: 0;
  font-weight: 600;

  a {
    text-decoration: none;
  }
}

.teaser__content {
  :first-child {
    margin-top: 0;
  }

  :last-child {
    margin-bottom: 0;
  }
}
