.reviews {
  padding-bottom: 96px;
  border-top: 1px solid #e6e2db;
  background: radial-gradient(ellipse at top left, #f5eee3, transparent 55%), #faf9f6;
  color: var(--forest);
}

.reviews__track {
  max-width: 904px;
  margin-inline: auto;
  display: flex;
  gap: 24px;
}

.reviews__track:focus-visible {
  outline: 2px solid #8b4a19;
  outline-offset: 6px;
}

.reviews__card {
  flex: 1 1 0;
  min-width: 0;
  max-width: 440px;
}

.reviews__widget {
  position: relative;
  height: 800px;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
}

.reviews__frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #e6e6e6;
  border-radius: 8px;
}

.reviews__attribution {
  position: absolute;
  bottom: 8px;
  left: 0;
  display: block;
  width: 100%;
  max-height: 14px;
  padding-inline: 16px;
  overflow: hidden;
  color: #b3b3b3;
  font: 10px / 14px "YS Text", var(--sans);
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 700px) {
  .reviews { padding-bottom: calc(100px + env(safe-area-inset-bottom)); }
  .reviews__track {
    gap: 16px;
    margin-inline: -20px;
    padding: 4px 20px 16px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 20px;
  }
  .reviews__card {
    flex: 0 0 88%;
    scroll-snap-align: start;
  }
}
