/* Single-dish pages (built from a weekly-plan day). Body 18px per the readable-type rule. */
.dish{max-width:760px;margin:0 auto;padding:18px 16px 40px;display:grid;gap:22px}
.dish .crumbs{font-size:16px;color:var(--plum-soft);margin:0}.dish .crumbs a{color:inherit}
.dish h1{font-size:clamp(34px,8vw,52px);line-height:1.05}
.dish .promise{font-size:20px;margin:0}
.dish .hero{margin:0;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.dish .hero img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.dish .chips{display:flex;flex-wrap:wrap;gap:10px}.dish .chips .chip{font-size:16px}
.dish .card{background:#fff;border-radius:var(--radius);padding:22px 20px;box-shadow:var(--shadow)}
.dish h2{font-size:clamp(26px,6vw,34px);margin:0 0 12px}
.dish ul.ings{list-style:none;margin:0;padding:0;display:grid;gap:10px}.dish ul.ings li{padding-left:30px;position:relative;font-size:18px;line-height:1.5}
.dish ul.ings li::before{content:"";position:absolute;left:0;top:.3em;width:18px;height:18px;border:2.5px solid var(--plum);border-radius:5px}
.dish ol.steps{margin:0;padding:0;list-style:none;counter-reset:s;display:grid;gap:14px}
.dish ol.steps li{counter-increment:s;padding-left:50px;position:relative;font-size:18px;line-height:1.6}
.dish ol.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:var(--coral);color:#fff;font:800 18px/36px Figtree,sans-serif;text-align:center}
.dish .swap{background:var(--gold-wash);border-radius:var(--radius);padding:18px 20px;font-size:18px;margin:0}
.dish .more{display:grid;gap:10px}.dish .more a{font-size:18px;font-weight:700}
/* Single-craft pages (2026-10-29): 4:5 photos, fix inside each step, readable 18px */
.craftpage .hero img{aspect-ratio:4/5;max-height:78vh;object-fit:cover}
.craftpage .cp-when{font-size:18px;line-height:1.6;margin:14px 0 0;font-weight:700;color:var(--plum)}
.craftpage ol.steps li p{margin:0}
.craftpage .cp-tip{margin:8px 0 0 !important;font-size:17px;background:var(--gold-wash);border-radius:12px;padding:10px 12px}
.craftpage .cp-step-ph{margin:12px 0 0;border-radius:16px;overflow:hidden}.craftpage .cp-step-ph img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block}
.craftpage .cp-var{margin:14px 0 0;padding-left:20px;display:grid;gap:10px}.craftpage .cp-var li,.craftpage .card p{font-size:18px;line-height:1.6}
.craftpage .cp-safe{background:#fff;border:2px solid var(--gold-wash)}
