/* Page-specific styles. Shared tokens/hero/shell live in page-base.css. */

.dining-card {
  min-height: 0;
  transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.dining-card:hover,
.dining-card:focus-within {
  border-color: rgba(77, 69, 54, 0.34);
  background: #fff;
  transform: translateY(-2px);
}

.dining-card__link {
  display: contents;
  color: inherit;
  text-decoration: none;
}

.dining-card__media {
  overflow: hidden;
}

.dining-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 420ms ease;
}

.dining-card:hover .dining-card__media img,
.dining-card:focus-within .dining-card__media img {
  transform: scale(1.04);
}

.dining-card__hours {
  margin: auto 0 0;
  color: var(--market-leaf);
  font-family: var(--font-mono);
  font-size: var(--text-xs);
}

.dining-empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 24px;
  border: 1px dashed rgba(77, 69, 54, 0.28);
  background: rgba(247, 250, 251, 0.78);
  color: var(--ink-soft);
}