.protein-foods-grid,
.protein-ideas-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}

.protein-food-card {
  display: grid;
  align-content: start;
  gap: 0.75rem;
  box-shadow: none;
  border-top: 0.25rem solid var(--color-green);
}

.protein-food-card h3,
.protein-idea-card h3 {
  font-size: 1.25rem;
  line-height: 1.25;
}

.protein-food-card dl {
  display: grid;
  gap: 0.8rem;
  margin: 0;
}

.protein-food-card dt {
  margin-bottom: 0.2rem;
  color: var(--method-green-deep);
  font-weight: 700;
  font-size: 0.9rem;
}

.protein-food-card dd {
  margin: 0;
  font-size: 0.95rem;
}

.protein-idea-card {
  --stack-space: 0.65rem;
  box-shadow: none;
}

.protein-compare-list {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding-left: 1.25rem;
}

.protein-compare-list li::marker {
  color: var(--color-green);
}

.protein-foods-page .glp-section-heading {
  max-width: 57rem;
}

.protein-foods-page .meal-browser-card-nutrition span {
  white-space: nowrap;
}

@media (min-width: 40rem) {
  .protein-foods-grid,
  .protein-ideas-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 64rem) {
  .protein-foods-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .protein-ideas-grid,
  .protein-foods-page .glp-meals-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
