.travel-food {
  overflow: hidden;
  background: #f7f1e8;
}

.travel-food-head {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(2rem, 7vw, 7rem);
  align-items: end;
  margin-bottom: clamp(2rem, 5vw, 3.5rem);
}

.travel-food h2 { margin: 0; }
.travel-food h2 em { color: var(--pink); }
.travel-food-intro p { margin: 0 0 .8rem; color: var(--muted); font-size: 1.05rem; }
.travel-food-intro .travel-food-help { margin-bottom: 0; color: var(--ink); font-size: .8rem; font-weight: 800; }

.travel-food-track {
  display: grid;
  grid-auto-columns: minmax(380px, 40%);
  grid-auto-flow: column;
  align-items: start;
  gap: 1rem;
  overflow-x: auto;
  padding: .25rem 0 1.35rem;
  scroll-padding-inline: .25rem;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--pink) rgba(23, 32, 25, .1);
  scrollbar-width: thin;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

.travel-food-card {
  display: grid;
  grid-template-rows: auto auto;
  height: max-content;
  align-self: start;
  overflow: hidden;
  border: 1px solid rgba(20, 37, 27, .1);
  border-radius: var(--radius);
  background: #fff;
  box-shadow: 0 1.2rem 3rem rgba(20, 37, 27, .08);
  scroll-snap-align: start;
}

.travel-food-card img {
  width: 100%;
  height: clamp(250px, 28vw, 360px);
  object-fit: cover;
  object-position: center;
}
.travel-food-copy { display: flex; flex-direction: column; padding: 1.25rem; }
.travel-food-type {
  margin: 0 0 .65rem;
  color: var(--pink);
  font-size: .62rem;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.travel-food-card-shared .travel-food-type { color: #8b5b00; }
.travel-food-copy h3 { margin: 0 0 .7rem; color: var(--forest); font-size: clamp(1.6rem, 2.4vw, 2.25rem); line-height: 1; }
.travel-food-copy > p:not(.travel-food-type) { margin: 0 0 1rem; color: var(--muted); font-size: .84rem; }
.travel-food-copy dl { display: grid; grid-template-columns: repeat(3, 1fr); gap: .35rem; margin: .15rem 0 0; }
.travel-food-copy dl div { padding: .6rem .45rem; border-radius: .7rem; background: #eef1e8; }
.travel-food-copy dt { color: var(--muted); font-size: .53rem; font-weight: 850; text-transform: uppercase; }
.travel-food-copy dd { margin: .15rem 0 0; color: var(--forest); font-family: Georgia, serif; font-size: .95rem; }
.travel-food-note { max-width: 980px; margin: 1rem 0 0; color: var(--muted); font-size: .76rem; }
.travel-food-note strong { color: var(--ink); }

@media (max-width: 800px) {
  .travel-food-head { grid-template-columns: 1fr; }
  .travel-food-track { grid-auto-columns: minmax(320px, 82%); }
  .travel-food-card img { height: clamp(240px, 55vw, 360px); }
}

@media (max-width: 520px) {
  .travel-food-track { grid-auto-columns: 92%; }
  .travel-food-card img { height: clamp(230px, 68vw, 300px); }
  .travel-food-copy { padding: 1rem; }
}
