.prod-head{padding-block:48px 24px}
.prod-head .lede{font-family:var(--display);font-size:clamp(1.2rem,2.6vw,1.45rem);line-height:1.5;max-width:60ch;margin:14px 0 0}
.pfacts{display:flex;flex-wrap:wrap;gap:10px 28px;margin:22px 0 0;padding:14px 0;border-block:1px solid var(--line);font-size:.92rem}
.pfacts div{display:grid}
.pfacts span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}
.pfacts b{font-weight:600}
.pmap{margin:28px 0 0}
.pmap img,.pmap svg{width:100%;height:auto;display:block;border:1px solid var(--line)}
.recipe{background:var(--paper);border:1px solid var(--line);padding:clamp(18px,4vw,32px);margin:2em 0}
.recipe h2{margin-top:0!important}
.recipe .rmeta{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.92rem;color:var(--muted);margin:-.3em 0 1.2em}
.recipe .cols{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px}
@media (max-width:760px){.recipe .cols{grid-template-columns:1fr}}
.recipe h3{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--door);margin:0 0 .6em}
.recipe ul.ing{list-style:none;padding:0;margin:0}
.recipe ul.ing li{padding:6px 0;border-bottom:1px dashed var(--line);font-size:.98rem}
.recipe ul.ing li.sub{border:0;font-weight:600;padding-top:12px;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.recipe ol.steps{counter-reset:s;list-style:none;padding:0;margin:0}
.recipe ol.steps li{counter-increment:s;position:relative;padding:0 0 14px 44px;font-size:.98rem}
.recipe ol.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--door);color:#fff;display:grid;place-items:center;font:700 .95rem/1 var(--display)}
.note.tip{border-left:4px solid #c8902e}
.note.safe{border-left:4px solid var(--door)}
.src{font-size:.86rem;color:var(--muted)}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:16px;margin:1.2em 0 2em}
.pcard{display:grid;gap:6px;text-decoration:none;color:inherit;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--c);padding:16px 18px}
.pcard b{font-family:var(--display);font-size:1.2rem;line-height:1.2}
.pcard span{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c);font-weight:600}
.pcard em{font-style:normal;font-size:.9rem;color:var(--muted)}
.pcard:hover b{color:var(--door)}
.lpt{columns:2 300px;column-gap:36px;padding:0;list-style:none;margin:0}
.lpt li{break-inside:avoid;padding:4px 0;border-bottom:1px solid var(--line);font-size:.95rem}
.lpt li.ours a{font-weight:700}
.lpt h3{column-span:all}
.cattbl{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;margin:1em 0}
.cattbl td,.cattbl th{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left}
.cattbl td.n{text-align:right;font-weight:600}
.bar{height:8px;border-radius:4px;background:var(--c)}
