:root{--ink: #1e2b25;--ink-soft: #4a5a52;--paper: #f6f8f3;--paper-2: #ecf0e8;--line: #d5ddd3;--sage: #5f8a68;--sage-deep: #3f6448;--broth: #d9a441;--broth-deep: #a97a22;--beet: #9c3d54;--white: #ffffff;--display: "Newsreader", "Iowan Old Style", Georgia, serif;--body: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;--mono: "IBM Plex Mono", "SF Mono", Menlo, monospace;--measure: 68ch;--radius: 14px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--sage-deep);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--broth-deep)}:focus-visible{outline:3px solid var(--broth);outline-offset:3px;border-radius:4px}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.12;letter-spacing:-.01em;margin:0 0 .5em;text-wrap:balance}h1{font-size:clamp(2.2rem,5vw,3.6rem)}h2{font-size:clamp(1.6rem,3vw,2.2rem)}h3{font-size:1.35rem}p{margin:0 0 1em}.wrap{width:min(1120px,100% - 2.5rem);margin-inline:auto}.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sage-deep)}.muted{color:var(--ink-soft)}.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.5rem 1rem;z-index:100}.skip:focus{left:1rem;top:1rem}.site-header{border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:20}.site-header .bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0}.brand{font-family:var(--display);font-size:1.55rem;color:var(--ink);text-decoration:none;letter-spacing:-.01em;display:inline-flex;align-items:baseline;gap:.35rem}.brand b{font-weight:600;color:var(--sage-deep)}.brand small{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;color:var(--ink-soft);text-transform:uppercase}.nav{display:flex;gap:.2rem;flex-wrap:wrap;justify-content:flex-end}.nav a{font-size:.92rem;padding:.35rem .6rem;border-radius:999px;text-decoration:none;color:var(--ink-soft)}.nav a:hover,.nav a[aria-current=page]{background:var(--paper-2);color:var(--ink)}.cats{display:flex;gap:.35rem .5rem;flex-wrap:wrap;padding:.55rem 0 .9rem}.cats a{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--sage-deep);padding:.3rem .6rem;border:1px solid var(--line);border-radius:6px;background:var(--white)}.cats a:hover,.cats a[aria-current=page]{border-color:var(--sage);background:var(--sage);color:#fff}@media(max-width:720px){.site-header .bar{flex-wrap:wrap}.nav{justify-content:flex-start}}.hero{padding:clamp(2.5rem,7vw,5rem) 0 2.5rem;display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center}.hero blockquote{margin:1.4rem 0 0;font-family:var(--display);font-style:italic;font-size:1.25rem;color:var(--ink-soft);border-left:3px solid var(--broth);padding-left:1rem;max-width:34ch}.hero blockquote cite{display:block;font-style:normal;font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;margin-top:.5rem}.hero-art{position:relative;aspect-ratio:1;max-width:420px;margin-inline:auto;width:100%}@media(max-width:860px){.hero{grid-template-columns:1fr}.hero-art{max-width:300px}}.needs{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.5rem;margin:0 0 3rem;box-shadow:0 1px 0 var(--line)}.needs h2{font-size:1.35rem;margin-bottom:.2rem}.needs p{margin-bottom:.9rem}.chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0}.chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);text-decoration:none;color:var(--ink);font-weight:600;font-size:.95rem;transition:transform .15s ease,border-color .15s ease,background .15s ease}.chip:hover{border-color:var(--beet);color:var(--beet);transform:translateY(-1px)}.chip .n{font-family:var(--mono);font-size:.7rem;color:var(--ink-soft);font-weight:400}.chip[aria-current=page]{background:var(--beet);border-color:var(--beet);color:#fff}.chip[aria-current=page] .n{color:#fff;opacity:.8}.section{padding:1.5rem 0 2.5rem}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.section-head a{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-3px);box-shadow:0 10px 28px -14px #1e2b2559}.card a.cover{display:block;aspect-ratio:3/2;background:var(--paper-2);overflow:hidden}.card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.card:hover img{transform:scale(1.03)}.card .ph{width:100%;height:100%;display:grid;place-items:center;color:var(--sage)}.card .body{padding:.9rem 1rem 1.05rem;display:flex;flex-direction:column;gap:.35rem;flex:1}.card h3{font-size:1.28rem;margin:0}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{color:var(--sage-deep)}.card .meta{font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.card .excerpt{font-size:.95rem;color:var(--ink-soft);margin:0}.card .needs-row{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:auto;padding-top:.4rem}.tag{font-size:.72rem;padding:.15rem .5rem;border-radius:999px;background:#f5e9ec;color:var(--beet);text-decoration:none}.recipe-head{padding:2.5rem 0 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:end}.recipe-head .cover{border-radius:var(--radius);overflow:hidden;aspect-ratio:3/2;background:var(--paper-2)}.recipe-head .cover img{width:100%;height:100%;object-fit:cover}.recipe-head .cover.ph{display:grid;place-items:center}.yield{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:.6rem}.story{font-family:var(--display);font-size:1.2rem;line-height:1.55;max-width:var(--measure);color:var(--ink)}.story p:first-of-type:first-letter{font-size:3.2em;float:left;line-height:.85;padding:.08em .1em 0 0;color:var(--sage-deep)}.recipe-body{display:grid;grid-template-columns:minmax(260px,1fr) 1.6fr;gap:3rem;padding:1rem 0 3rem;align-items:start}.ingredients{position:sticky;top:5.5rem;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.35rem}.ingredients h2,.directions h2{font-size:1.1rem;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sage-deep);font-weight:500}.ingredients ul{list-style:none;padding:0;margin:0}.ingredients li{padding:.35rem 0;border-bottom:1px dashed var(--line)}.ingredients li ul{margin-top:.3rem;padding-left:1rem}.ingredients li ul li{border:0;padding:.15rem 0}.ingredients label{display:flex;gap:.6rem;align-items:baseline;cursor:pointer}.ingredients input{accent-color:var(--sage);margin-top:.3rem}.ingredients input:checked+span{text-decoration:line-through;color:var(--ink-soft)}.directions ol{padding-left:0;list-style:none;counter-reset:step;max-width:var(--measure)}.directions ol li{counter-increment:step;position:relative;padding:.7rem 0 .7rem 3rem;border-bottom:1px solid var(--line)}.directions ol li:before{content:counter(step);position:absolute;left:0;top:.55rem;font-family:var(--display);font-size:1.5rem;color:var(--broth-deep);line-height:1.1}.directions ol li strong{display:block;margin-bottom:.2rem}.mdnotes{margin-top:2rem;background:#fffdf5;border:1px solid #e9dcb2;border-radius:8px;padding:1.2rem 1.4rem;position:relative}.mdnotes:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--beet);border-radius:8px 0 0 8px}.mdnotes h2{font-family:var(--mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--beet);margin-bottom:.6rem;display:flex;align-items:center;gap:.5rem}.mdnotes h2 .rx{font-family:var(--display);font-style:italic;font-size:1.4rem;letter-spacing:0;text-transform:none}.mdnotes ul{margin:0;padding-left:1.1rem}.mdnotes li{margin:.35rem 0}.mdnotes li{margin:0}.mdnotes p{margin-bottom:.6em}.recipe-foot{display:flex;gap:.5rem;flex-wrap:wrap;padding:0 0 3rem;align-items:center}.recipe-foot .lbl{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-right:.3rem}@media(max-width:860px){.recipe-head,.recipe-body{grid-template-columns:1fr}.ingredients{position:static}}.prose{max-width:var(--measure);font-size:1.1rem}.prose p{margin-bottom:1.2em}.page-head{padding:2.5rem 0 1rem}.site-footer{border-top:1px solid var(--line);margin-top:3rem;padding:2rem 0 2.5rem;color:var(--ink-soft);font-size:.92rem}.site-footer .row{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.steam path{stroke:var(--sage);stroke-width:2.4;fill:none;stroke-linecap:round;opacity:.55;animation:rise 3.2s ease-in-out infinite}.steam path:nth-child(2){animation-delay:.9s}.steam path:nth-child(3){animation-delay:1.7s}@keyframes rise{0%{transform:translateY(6px);opacity:0}30%{opacity:.6}to{transform:translateY(-14px);opacity:0}}@media(prefers-reduced-motion:reduce){.steam path{animation:none;opacity:.5}.card,.chip{transition:none}html{scroll-behavior:auto}}
