/* Liberty Partners — Excitement Drive page */
  /* ── True bento gallery ──────────────────────────────────────────────
     A 6-column track lets base tiles span 2×1 and feature tiles span 4×2.
     Each tile is a flex column: a 3:2 image frame with its caption below.
     The row height (--brow) = one 3:2 image + one caption band, set from
     the live column width by the small script at the foot of the page, so
     base images stay a true, uncropped 3:2 and two stacked base tiles line
     up exactly with one feature — rows tile with zero gaps. */
  @media (min-width: 781px) {
    .gallery .gal.bento {
      grid-template-columns: repeat(6, 1fr);
      grid-auto-rows: var(--brow, 220px);
      grid-auto-flow: dense;
      align-items: stretch;
    }
    .gallery .gal.bento .gfig { grid-column: span 2; grid-row: span 1; margin: 0; display: flex; flex-direction: column; }
    .gallery .gal.bento .gfig.feat { grid-column: span 4; grid-row: span 2; }
    .gallery .gal.bento .gfig .frame {
      flex: 1 1 auto; min-height: 0; width: 100%; height: auto; aspect-ratio: auto; overflow: hidden;
    }
    .gallery .gal.bento .gfig figcaption { flex: 0 0 auto; }
  }
  /* Phones: single column, each frame a clean 3:2 with its caption below. */
  @media (max-width: 780px) {
    .gallery .gal.bento { grid-template-columns: 1fr; grid-auto-flow: row; grid-auto-rows: auto; align-items: start; }
    .gallery .gal.bento .gfig { grid-column: 1 / -1 !important; margin: 0; display: flex; flex-direction: column; }
    .gallery .gal.bento .gfig .frame { flex: none; width: 100%; aspect-ratio: 3 / 2; height: auto; overflow: hidden; }
  }
