/* ft3b: the robot fine-tune block, third in Zero-Shot Applications (scoped to .apps-ft; nothing else uses these rules).
   Card (ft3b2): full column width; at >= 768 px its height equals the Isaac card's (the Isaac frame, 1046 x 877, is
   min(col, available width, 56vh x 1046/877) wide), at <= 767 px as tall as the 180 px arms need. Top padding sets the DAVIS -> robot gap equal to
   the Isaac -> DAVIS gap measured at 1440x900 (desktop) and 390x844 (phone). */
.apps-ft .film-stage { position: static; height: auto; padding-top: 79px; padding-bottom: 72px; }
.apps-ft .ftb-card { width: min(var(--col), 100%); height: calc(min(var(--col), 100vw - 2 * var(--side), 56vh * 1.1927) / 1.1927); display: grid; grid-template-columns: repeat(3, 1fr); background: #ffffff;
  border-radius: var(--radius); box-shadow: 0 1px 2px rgba(var(--shadow-rgb), 0.06), 0 18px 48px -18px rgba(var(--shadow-rgb), 0.28); overflow: hidden; }
.apps-ft figure { margin: 0; min-height: 0; display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 12px 6px 10px; }
.apps-ft figure img { flex: 1 1 auto; min-height: 0; width: 100%; object-fit: contain; display: block; }
.apps-ft figcaption { font-size: 13px; line-height: 1.2; color: var(--ink-2); text-align: center; }
.apps-ft .ftb-bar { display: inline-block; width: 120px; height: 8px; border-radius: 4px; vertical-align: middle; margin: 0 6px;
  background: linear-gradient(90deg, rgb(180, 186, 198), rgb(174, 58, 12)); }
@media (max-width: 767px) {
  .apps-ft .film-stage { padding-top: 131px; }
  .apps-ft .ftb-card { height: auto; }
  .apps-ft figure img { flex: none; height: 180px; }
  .apps-ft figure { gap: 2px; padding: 4px 2px 3px; }
  .apps-ft figcaption { font-size: 9.5px; }
  .apps-ft .ftb-bar { width: 72px; }
}
