/* Act 1b, the map session. The front door: the one fixed shape, fixed
   price offer, on Millet between the field and the services. Five yields
   in a ledger (the services act's row pattern, so the two acts read as one
   family), then the price and the one solid control on the page above the
   contact act. No cards, no second signal colour. */

#map .band__head { max-width: 736px; }
#map .band__title { text-wrap: balance; }

.yields { margin-top: var(--space-64); }

.yield {
  display: grid;
  grid-template-columns: var(--grid-column) minmax(0, 4fr) minmax(0, 7fr);
  column-gap: var(--space-32);
  align-items: start;
  border-top: var(--hairline) solid var(--color-rule-light);
  padding-block: var(--space-24);
}

.yield:last-child { border-bottom: var(--hairline) solid var(--color-rule-light); }

.yield__index {
  display: block;
  padding-top: var(--space-8);
  font-family: var(--font-utility);
  font-size: var(--text-14);
  line-height: var(--leading-14);
  font-weight: var(--weight-medium);
  letter-spacing: 0.08em;
  color: var(--color-furrow);
}

.yield__title {
  font-family: var(--font-display);
  font-weight: var(--weight-semibold);
  font-size: var(--text-29);
  line-height: var(--leading-29);
  letter-spacing: -0.005em;
  text-wrap: balance;
}

.yield__text {
  grid-column: 3;
  color: var(--color-ink-secondary-light);
  max-width: 62ch;
}

/* The price and the control: one row, price left, actions right, 48 under
   the ledger's closing hairline. */
.map__terms {
  margin-top: var(--space-48);
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  column-gap: var(--space-32);
  align-items: start;
}

.map__price { display: grid; row-gap: var(--space-8); }

.map__price-figure {
  font-family: var(--font-display);
  font-weight: var(--weight-semibold);
  font-size: var(--text-42);
  line-height: var(--leading-42);
  letter-spacing: -0.01em;
  font-variant-numeric: tabular-nums;
  color: var(--color-loam);
}

.map__price-note {
  color: var(--color-ink-secondary-light);
  max-width: 40ch;
}

.map__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-16) var(--space-32);
}

@media (max-width: 1023px) {
  .yield { grid-template-columns: var(--grid-column) minmax(0, 1fr); }
  .yield__title, .yield__text { grid-column: 2; }
  .yield__text { margin-top: var(--space-8); }
  .map__terms { grid-template-columns: minmax(0, 1fr); row-gap: var(--space-32); }
}

@media (max-width: 767px) {
  .yields { margin-top: var(--space-48); }
  .yield { grid-template-columns: minmax(0, 1fr); padding-block: var(--space-16); }
  .yield__title, .yield__text { grid-column: 1; }
  .yield__index { padding-top: 0; }
  .yield__title { margin-top: var(--space-8); }
  .map__price-figure { font-size: var(--text-35); line-height: var(--leading-35); }
  .map__actions .control { width: 100%; text-align: center; }
}
