.cf-guide-amazon-anchor {
  min-height: 1px;
}

.cf-guide-amazon[hidden] {
  display: none !important;
}

.cf-guide-amazon {
  margin-top: 32px;
  padding: 20px;
  border: 1px solid var(--cf-guide-line, #dedede);
  border-radius: 16px;
  background: #fafafa;
}

.cf-guide-amazon__header h2 {
  margin: 0 0 16px;
  font-size: 21px;
  line-height: 1.3;
  letter-spacing: -.025em;
  text-transform: none;
}

.cf-guide-amazon__header h2 span {
  text-decoration: underline;
  text-decoration-color: #ff9900;
  text-underline-offset: 5px;
}

.cf-guide-amazon__row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  align-items: stretch;
}

.cf-guide-amazon .cf-guide-amazon__results {
  display: contents;
  min-width: 0;
  margin: 0;
}

.cf-guide-amazon .chaos-amazon__grid {
  display: contents;
}

.cf-guide-amazon .chaos-amazon-card {
  height: 100%;
  border-radius: 10px;
  box-shadow: none;
}

.cf-guide-amazon .chaos-amazon-card__link {
  grid-template-rows: 104px 58px auto;
}

.cf-guide-amazon .chaos-amazon-card__media {
  margin: 8px 8px 0;
  border-radius: 6px;
  background: #fff;
}

.cf-guide-amazon .chaos-amazon-card__body {
  padding: 9px 10px;
}

.cf-guide-amazon .chaos-amazon-card__title {
  font-size: 13px;
  line-height: 1.4;
}

.cf-guide-amazon .chaos-amazon-card__footer {
  min-height: 52px;
  padding: 8px 10px;
}

.cf-guide-amazon .chaos-amazon-card__price {
  font-size: 17px;
}

.cf-guide-amazon__footer {
  margin-top: 12px;
  color: #656565;
  font-size: 11px;
  line-height: 1.5;
}

.cf-guide-amazon__footer p {
  margin: 4px 0;
}

.cf-guide-amazon__footer summary {
  width: fit-content;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 900px) {
  .cf-guide-amazon {
    margin-top: 24px;
    padding: 16px;
  }

  .cf-guide-amazon__header h2 {
    font-size: 19px;
  }

  .cf-guide-amazon__row {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(164px, 35%);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    /* Offers arrive independently; don't anchor or snap to an early response. */
    overflow-anchor: none;
    padding: 2px 2px 8px;
  }
}
