/* An explicit width prevents inline-size containment from collapsing this
   absolutely positioned, right-aligned hero caption. */
@media (min-width: 901px) {
  .hero .shot.right {
    width: min(1100px, calc(100% - var(--pad) - var(--pad)));
    min-width: 0;
  }
}

.foot-bot {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 20px;
}
.foot-bot > span:first-child { justify-self: start; }
.foot-bot > span:last-child { justify-self: end; text-align: right; }
.foot-bot .foot-legal {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  justify-self: center;
  color: #96938d;
  font: 12px/1.6 Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none;
}
.foot-bot .foot-legal:hover,
.foot-bot .foot-legal:focus-visible {
  color: #f0efeb;
  text-decoration: underline;
  text-underline-offset: 4px;
}
@media (max-width: 900px) {
  .foot-bot { grid-template-columns: 1fr; gap: 0; justify-items: center; }
  .foot-bot > span:first-child { justify-self: center; text-align: center; }
  .foot-bot > span:last-child { display: none; }
}
