/* Recipe pages - extras on top of theme.css (generated by meal_factory/build_recipe_pages.py) */
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-top:1.6rem}
.rcard{display:flex;flex-direction:column;text-decoration:none;background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 14px 30px -24px var(--sh1);transition:transform .15s ease, box-shadow .2s ease}
.rcard:hover{transform:translateY(-3px);box-shadow:0 22px 40px -24px var(--sh2)}
.rcard img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.rcard-body{padding:14px 16px 16px}
.rkick{font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--brand)}
.rcard h3{margin:.25em 0 .3em;font-size:1.12rem}
.rcard p{margin:0;color:var(--ink-soft);font-size:.92rem}
.recipe-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:28px;align-items:start}
.h-small{font-size:1.35rem;margin:.1em 0 .6em}
.photo-note,.small{font-size:.82rem;margin:.6rem 0 0}
.small a,.lead a{color:var(--brand);font-weight:700}
.ingredients,.shopping{list-style:none;margin:0;padding:0}
.ingredients li,.shopping li{padding:9px 0;border-bottom:1px solid var(--line)}
.ingredients li:last-child,.shopping li:last-child{border-bottom:0}
.ingredients b{display:inline-block;min-width:6.2em;color:var(--brand)}
.shopping li::before{content:"";display:inline-block;width:13px;height:13px;border:2px solid var(--brand);border-radius:4px;margin-right:10px;vertical-align:-2px}
.method{list-style:none;counter-reset:st;margin:1.2rem 0 1.6rem;padding:0}
.method li{counter-increment:st;position:relative;padding:0 0 18px 58px}
.method li::before{content:counter(st);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-weight:800;background:var(--lime);color:#0a3f30;font-family:"Bricolage Grotesque",system-ui,sans-serif}
.method h3{margin:.35em 0 .2em}
.method p{margin:0;color:#24352c}
.nut-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.nut{background:#0f1a14;border-radius:14px;padding:12px 14px}
.nut b{display:block;color:var(--lime);font:800 1.7rem/1 "Bricolage Grotesque",system-ui,sans-serif}
.nut b small{font-size:.8rem;color:#fff;margin-left:4px}
.nut span{font-size:.74rem;color:#cfe0d4}
.follow-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.crumbs{font-size:.82rem;color:var(--ink-soft);margin:0 0 14px}
.crumbs a{color:var(--brand);font-weight:700;text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.cta-band .cta-terms{font-size:.84rem;margin:1.1em auto 0;max-width:52ch;color:#cfe9db}
.more-like .rgrid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.fridge-link{margin:1.4rem 0 0;font-weight:600}
.fridge-link a{color:var(--brand);font-weight:800}
@media (max-width:820px){.recipe-grid{grid-template-columns:1fr}}
