/**
 * Computes a CSS calc function that betweens a value from
 * A to B over viewport-width A to viewport-width B.
 * Requires 2 media queries to cap the upper (B) and lower (A) values.
 */
.reviews .article {
  padding: 0;
  background-color: transparent;
  box-shadow: none;
}
.reviews .article .article__content {
  margin-top: 2rem;
}
.reviews .article .article__author {
  display: none;
}

.main-alt .main {
  width: 100%;
  margin: 3em auto;
}

.main .reviews-disclaimer {
  padding: 1.5rem;
  background-color: #E6E6E6;
  font-size: 0.925rem;
}

.offer-review {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  margin: 1.5rem 0;
  padding: 1rem;
  background-color: #F7FAFC;
  box-shadow: 2px 2px 7px 0px rgba(0, 0, 0, 0.1);
}
@media (min-width: 48em) {
  .offer-review {
    grid-template-columns: 120px auto 170px 170px;
    grid-template-rows: 100%;
    margin: 1rem 0;
    padding: 1.5em;
    background-color: #FFF;
  }
}
@media (max-width: 47.99em) {
  .offer-review > * {
    justify-self: center;
  }
}

.offer-review__img {
  order: 0;
  max-width: 120px;
  /*height: 100%;*/
}

.offer-review__content {
  margin: 0.5rem 0 1rem;
  order: 4;
  text-align: center;
}
@media (min-width: 48em) {
  .offer-review__content {
    margin: 0 1rem;
    order: 2;
    text-align: left;
  }
}
.offer-review__content > * {
  margin: 0;
}
.offer-review__content h2 {
  font-size: 1.125rem;
}
.offer-review__content p {
  font-size: 0.825rem;
}

.offer-review__content.col-span {
  grid-column: 2/-2;
}

.offer-review__btn {
  order: 5;
  display: flex;
  align-items: center;
  padding: 0.5em 2em;
  background-color: #20C997;
  border: 1px solid #20C997;
  border-radius: 0.25em;
  color: #FFF;
  font-weight: 500;
}
.offer-review__btn:hover, .offer-review__btn:focus {
  background-color: #FFF;
  color: #20C997;
  text-decoration: none;
}
@media (min-width: 48em) {
  .offer-review__btn {
    grid-column-start: 4;
  }
}

.offer-review .OfferRatingWrap {
  order: 3;
}