.appointment-teaser {
  font-size: 1rem;
  border-radius: .625rem;
  border: 1px solid var(--stone);
  
  @media (min-width: 1101px) {
    display: grid;
    align-items: center;
    grid-template-columns: 280px 1fr .2fr 8.66rem;
    gap: 1rem;
  }

  @media (max-width: 1100px) {
    display: flex;
    flex-direction: column;
  }
}

.appointment-teaser__date-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  padding: .75rem;
  box-sizing: border-box;
  font-size: .9375rem;
  font-weight: 500;
  background-color: var(--stone);
  border-radius: .625rem;
}

@media (min-width: 1101px) {
  .appointment-teaser__content {
    display: grid;
    align-items: center;
    gap: 1rem;
    grid-template-columns: 1fr .4fr;
    margin-left: 2rem;
  }
}

@media (max-width: 1100px) {
  .appointment-teaser__content {
    padding: .75rem .75rem 0;
  }
}

.appointment-teaser__title {
  margin: 0;
  font-size: 1.125rem;

  @media (min-width: 1101px) {
    font-size: 1rem;
  }
}

@media (max-width: 1100px) {
  .appointment-teaser__price {
    padding: 0 .75rem .75rem;
  }
}

.appointment-teaser__link {
  padding: .25rem;
  box-sizing: border-box;
  text-align: right;
}

@media (max-width: 1100px) {
  .appointment-teaser__link {
    padding: 0 .75rem .75rem;
  }

  .appointment-teaser__link > a {
    width: 100%;
    justify-content: center;
  }
}
