# Credits

## Cropping

Each hero ships as a 3:2 wide (1600×1067) and a 1:1 card crop (1000²), both cut
from the original at 2600px by a subject-aware crop, not by Unsplash's
`crop=entropy`. Entropy is useless on a studio shot: a uniform sweep background
has no entropy anywhere, so it centres on the whole frame and the dish ends up in
the middle half with dead ground above and below. `gochujang-rice` — the hero of
the swap — was 35% empty grey before the re-crop.

The crop estimates the background from a 6px border ring, and if the ring's
luminance spread is under 62 it treats the shot as studio: threshold against the
background, take the subject's bounding box, and frame it at 90% of the short
side. Busy scenes (spread above 62, or a subject already filling the frame) fall
through to a centre crop, which is right for them.

## Dish photography — Unsplash

| recipe | photo | photographer | alt |
|---|---|---|---|
| miso-udon | [_3Lo0riK9Fc](https://unsplash.com/photos/_3Lo0riK9Fc) | Curated Lifestyle (@curatedlifestyle) | Soba noodle japanese food cuisine |
| cod-fennel | [zP6yb6R9Sic](https://unsplash.com/photos/zP6yb6R9Sic) | Negley Stockman (@negley) | A white plate topped with a sandwich and veggies |
| gochujang-rice | [-TIBsr1UEvs](https://unsplash.com/photos/-TIBsr1UEvs) | Xavier Chng (@cohesionsingapore) | a white bowl filled with food on top of a table |
| gnocchi-sage | [61ipM_1BUZc](https://unsplash.com/photos/61ipM_1BUZc) | Gabriella Clare Marino (@gabiontheroad) | brown food on white ceramic plate |
| shortrib-ragu | [joYbzDhE6AM](https://unsplash.com/photos/joYbzDhE6AM) | rawkkim (@rawkkim) | a white plate topped with pasta covered in sauce |
| shrimp-paella | [4B0cLMtJxWw](https://unsplash.com/photos/4B0cLMtJxWw) | Douglas Lopez (@dougglaslopez) | black cooking pan on stove |
| salmon-poke | [3fXZpx8graQ](https://unsplash.com/photos/3fXZpx8graQ) | Paul Einerhand (@pauleinerhand) | cooked food on black ceramic plate |
| katsu-curry | [hEeA50ZHo4o](https://unsplash.com/photos/hEeA50ZHo4o) | Xavier Chng (@cohesionsingapore) | a bowl filled with rice and meat covered in sauce |
| broccolini-burrata | [cNxVKn61oSU](https://unsplash.com/photos/cNxVKn61oSU) | Singkai Lee (@singkai) | a blue plate topped with broccoli and a scoop of ice cream |
| oat-pancakes | [exyTIrXyqm0](https://unsplash.com/photos/exyTIrXyqm0) | Eiliv Aceron (@shootdelicious) | brown and white bread on white ceramic plate |
| harissa-chickpeas | [XaUAGu245rk](https://unsplash.com/photos/XaUAGu245rk) | Alexandra Tran (@alexgoesglobal) | a plate of food with tortillas and cheese |
| mapo-tofu | [00uSpdQdA4g](https://unsplash.com/photos/00uSpdQdA4g) | Patrycja Jadach (@patrycjajadach) | a bowl of chicken and broccoli with rice and chopsticks |

## Ingredient cut-outs — TheMealDB

Transparent PNGs from <https://www.themealdb.com/images/ingredients/>, downscaled to 320px. 121 in `img/ing/`. TheMealDB images are free for non-commercial/educational use; these are prototype storyboards only.

## Type

Selecta (Wabi brand face) and Kalice — from the shared Projects font library.
Selecta is the only sans in all three directions; Kalice is the serif, and it is
used by Noir and Daylight only. Studio has no serif at all, which is most of why
it reads as an instrument and Noir reads as a magazine.
