diff --git a/images/ios-row-grid-dark.png b/images/ios-row-grid-dark.png
new file mode 100644
index 0000000..55fbcb6
Binary files /dev/null and b/images/ios-row-grid-dark.png differ
diff --git a/images/ios-row-grid.png b/images/ios-row-grid.png
new file mode 100644
index 0000000..a623224
Binary files /dev/null and b/images/ios-row-grid.png differ
diff --git a/ios/index.mdx b/ios/index.mdx
index 703a639..81a0ec8 100644
--- a/ios/index.mdx
+++ b/ios/index.mdx
@@ -140,7 +140,14 @@ On iPhone Duo the system draws the toolbar and the tab bar down the side of the
### Browsing
-A row in the list previews four of its fields, and eight where the display is wide enough. Search the table list by name. A PostgreSQL materialized view sits under **Views** and opens read only. Page a table at 50, 100, 200, or 500 rows, jump to a page number, sort by a column, search text columns, and stack filters with AND or OR.
+Rows show as cards or as a grid. Pick **Cards** or **Grid** in a table's **More** menu, or in the **More** menu of **Query** once it has results, and the choice applies everywhere. iPhone starts with cards and iPad with the grid. A card previews four of its fields, and eight where the display is wide enough. The grid shows one row per line under a fixed header, and the row's key column stays at the leading edge while the other columns scroll sideways. Touch and hold a row in either layout to share, copy, or delete it.
+
+
+
+
+
+
+Search the table list by name. A PostgreSQL materialized view sits under **Views** and opens read only. Page a table at 50, 100, 200, or 500 rows, jump to a page number, sort by a column, search text columns, and stack filters with AND or OR.
To follow a foreign key, tap the link under its value on a row, or long-press a row in the list and pick the key. A sheet previews the row it points at, titled with the table and, when it differs from the one open, the schema. A value in the preview that is itself a foreign key opens the next row in the same sheet, and **Back** returns one step. **Open Table** opens that table filtered to the key, and when one row matches it lands on that row, ready to edit. **Back** then returns to the filtered list and to the row you started from. While that row has an edit open, **Open Table** is dimmed.