{"compiledCode":"\"use strict\";Object.defineProperty(exports, \"__esModule\", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _react = require('react'); var _react2 = _interopRequireDefault(_react);\n\n function ToppingsPage() {\n  const d = {\"h1\":\"Toppings\",\"intro\":\"At pizza temperatures, toppings render, scorch, or steam. Grouping them by how they behave in heat — rather than by cuisine — turns topping decisions from guesswork into something you can predict.\",\"primaryCtas\":[{\"label\":\"How toppings behave under a high bake\",\"href\":\"/blog/how-toppings-behave-under-a-high-bake\"},{\"label\":\"How to buy ingredients on spec\",\"href\":\"/blog/buy-pizza-ingredients-on-spec\"}],\"inShort\":\"This section covers how toppings behave at temperature and how to buy them: why pepperoni cups, how different cured meats render, why prosciutto goes on after the bake, what raw sausage requires, and how to stop wet vegetables ruining a pizza.\",\"notice\":\"Scope: this section covers toppings and buying knowledge only. We publish no curing methods, no cure calculations, and no meat-fermentation guidance. If you are looking for how to cure meat at home, this is not the site for it — that subject is genuinely dangerous to write about casually and we have chosen not to.\",\"whoFor\":[\"Bakers whose toppings burn, steam, or slide off\",\"Anyone buying cured meat for pizza and unsure what to look for\",\"Cooks who want the cupped, crisp pepperoni and keep getting flat greasy discs\"],\"whenToUse\":[\"Before buying cured meat for a fast, very hot bake\",\"When a vegetable pizza keeps coming out soggy\",\"When deciding what goes on before the oven and what goes on after\"],\"sections\":[{\"heading\":\"Four behaviours, not fifty ingredients\",\"paragraphs\":[\"Almost everything you might put on a pizza falls into one of four groups, and the group tells you when it should go on.\"],\"table\":{\"head\":[\"Behaviour\",\"Examples\",\"When it goes on\"],\"rows\":[[\"Renders fat and crisps\",\"Higher-fat cured meats\",\"Before the bake\"],[\"Scorches quickly\",\"Lean cured meats, thin herbs, some cheeses\",\"Before, but protected or late\"],[\"Releases water\",\"Mushrooms, courgette, fresh tomato, high-moisture cheese\",\"Pre-treated, or after\"],[\"Damaged by heat\",\"Dry-cured whole-muscle products, delicate leaves, finishing oils\",\"After the bake\"]]},\"bullets\":[{\"text\":\"How toppings behave under a high bake\",\"href\":\"/blog/how-toppings-behave-under-a-high-bake\"},{\"text\":\"Why pepperoni cups: casing, fat, and diameter\",\"href\":\"/blog/why-pepperoni-cups\"},{\"text\":\"Soppressata, 'nduja, guanciale, and capicola under a high bake\",\"href\":\"/blog/cured-meats-under-a-high-bake\"},{\"text\":\"Why prosciutto goes on after the bake\",\"href\":\"/blog/why-prosciutto-goes-on-after-the-bake\"},{\"text\":\"Sausage on pizza: raw vs pre-cooked\",\"href\":\"/blog/sausage-on-pizza-raw-vs-pre-cooked\"},{\"text\":\"Why wet vegetables ruin a pizza, and what to do about it\",\"href\":\"/blog/wet-vegetables-on-pizza\"}]},{\"heading\":\"Buying cured meat for pizza\",\"paragraphs\":[\"Cured meat is where this section earns its keep, because almost nobody writes about it from the baker's side. The questions that matter are how much fat it carries, how it is cased, how thick it is sliced, and how all of that behaves in the specific bake you are running.\",\"Those are buying questions with observable answers, and they are the ones our pages address.\"],\"bullets\":[{\"text\":\"How cured meats render under a high bake\",\"href\":\"/blog/cured-meats-under-a-high-bake\"}]},{\"heading\":\"The one safety point\",\"paragraphs\":[\"Raw sausage needs to reach a safe internal temperature, and a short, very hot bake browns the outside without guaranteeing the centre.\",\"That is the single topping decision on this site with a genuine safety dimension, so the page leads with the requirement and the citation rather than treating it as a texture question. Check with a probe rather than judging by appearance.\"],\"bullets\":[{\"text\":\"Sausage on pizza: raw vs pre-cooked\",\"href\":\"/blog/sausage-on-pizza-raw-vs-pre-cooked\"}]},{\"heading\":\"Topping load changes the bake\",\"paragraphs\":[\"Every additional topping adds mass and moisture, and both extend the time the base needs. A heavily loaded pizza baked to the same schedule as a plain one will very often produce a gum line.\",\"If you are diagnosing a soggy centre, topping load belongs on the list of suspects alongside hydration and bottom heat.\"],\"bullets\":[{\"text\":\"The gum line: five causes\",\"href\":\"/blog/pizza-gum-line-causes\"},{\"text\":\"Full troubleshooting hub\",\"href\":\"/troubleshooting\"}]}],\"related\":[{\"label\":\"Ingredients\",\"href\":\"/ingredients\"},{\"label\":\"Troubleshooting\",\"href\":\"/troubleshooting\"},{\"label\":\"Pizza styles\",\"href\":\"/styles\"},{\"label\":\"Glossary\",\"href\":\"/glossary\"}],\"faqs\":[{\"q\":\"How do I get pepperoni to cup?\",\"a\":\"It is mechanical rather than magical: casing, fat content, and diameter do most of it, with bake conditions doing the rest. Once you know the mechanism you can buy for the effect instead of hoping.\"},{\"q\":\"Why does my prosciutto go dry and shrivelled?\",\"a\":\"Because it went into the oven. Thinly sliced dry-cured products are damaged by a bake and should go on afterwards, using residual heat rather than direct heat.\"},{\"q\":\"Can I put raw sausage straight on the pizza?\",\"a\":\"Only if it reaches a safe internal temperature during the bake, which a short high-temperature bake does not guarantee. Crumb size is the main lever, and checking with a probe beats judging by colour.\"},{\"q\":\"How do I stop mushrooms making the pizza soggy?\",\"a\":\"Reduce the water before it reaches the dough: dry-sauté or pre-cook, salt and drain, slice thinner, or add after the bake. The wet-vegetables page explains what each option does.\"},{\"q\":\"Do you cover how to cure meat at home?\",\"a\":\"No, deliberately. Home curing carries real risks that need specialist guidance, and this is a pizza publication. We cover cured meat as something you buy and bake.\"},{\"q\":\"Is there a limit to how much I should put on?\",\"a\":\"Practically, yes. Load adds moisture and mass and extends the bake the base needs, so on a heavily topped pizza with a soggy centre, check the load before you change the dough.\"},{\"q\":\"Why is this section on a site with this name?\",\"a\":\"Because toppings are where pizza and cured meat genuinely meet, and it is a subject most pizza writing handles badly. The name is an ordinary Italian word for big mouth, and the site has no connection to the cured-meat business that previously used it.\"}],\"closingCtaHeading\":\"Buy for the bake you are running\",\"closingCtaText\":\"The behaviour of a topping depends on your bake as much as on the product. Start with the behaviour guide, then buy on specification rather than on packaging.\",\"closingCtas\":[{\"label\":\"Toppings under a high bake\",\"href\":\"/blog/how-toppings-behave-under-a-high-bake\"},{\"label\":\"How to buy ingredients on spec\",\"href\":\"/blog/buy-pizza-ingredients-on-spec\"}]};\n  const btn = (kind) => ({\n    display: \"inline-block\",\n    padding: kind === \"primary\" ? \"11px 18px\" : \"9px 16px\",\n    margin: \"6px 10px 6px 0\",\n    borderRadius: 0,\n    textDecoration: \"none\",\n    fontWeight: 700,\n    fontSize: 15,\n    background: kind === \"primary\" ? \"var(--c1fflz6z-runtime-action-bg)\" : \"transparent\",\n    color: kind === \"primary\" ? \"var(--c1fflz6z-runtime-action-fg)\" : \"var(--c1fflz6z-runtime-accent)\",\n    border: \"1px solid var(--c1fflz6z-runtime-action-bg)\",\n  });\n  return (\n    _react2.default.createElement('div', { className: \"bcpage reading-boccalone-toppings reading-article\"  , 'aria-labelledby': \"bc-title\", 'data-reading-page': \"toppings\",}, _react2.default.createElement('style', null, `\n.reading-boccalone-toppings{box-sizing:border-box;width:100%;max-width:960px;margin:0 auto;padding:64px clamp(20px,5vw,64px) 80px;color:var(--c1fflz6z-runtime-text);background:var(--c1fflz6z-runtime-bg);font-family:var(--c1fflz6z-font-body);font-size:17px;line-height:1.75;overflow-wrap:anywhere}\n.reading-boccalone-toppings *{box-sizing:border-box} .reading-boccalone-toppings :is(h1,h2,h3){font-family:var(--c1fflz6z-font-heading);font-weight:400;color:var(--c1fflz6z-runtime-text);text-wrap:balance}\n.reading-boccalone-toppings h1{font-size:clamp(42px,5.5vw,72px);line-height:1.08;letter-spacing:-.015em;margin:0 0 26px;max-width:24ch}\n.reading-boccalone-toppings h2{font-size:clamp(28px,3.5vw,38px);line-height:1.18;margin:48px 0 18px} .reading-boccalone-toppings h3{font-size:25px;line-height:1.25;margin:28px 0 12px}\n.reading-boccalone-toppings :is(p,ul,ol){margin-top:0;margin-bottom:20px} .reading-boccalone-toppings li{margin-bottom:8px} .reading-boccalone-toppings :is(ul,ol){padding-left:24px} .reading-boccalone-toppings p{max-width:74ch}\n.reading-boccalone-toppings .reading-kicker{font-family:var(--c1fflz6z-font-body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--c1fflz6z-runtime-accent);margin:0 0 16px}\n.reading-boccalone-toppings :is(.bc-intro,h1+p){font-size:20px;line-height:1.65;margin-bottom:30px} .reading-boccalone-toppings a{color:var(--c1fflz6z-runtime-accent);text-underline-offset:4px} .reading-boccalone-toppings a:hover{text-decoration-thickness:2px}\n.reading-boccalone-toppings :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--c1fflz6z-runtime-accent);outline-offset:4px}\n.reading-boccalone-toppings :is(.bc-callout,.bc-warn,.gf-note){background:var(--c1fflz6z-runtime-panel);border-left:3px solid var(--c1fflz6z-runtime-action-bg);padding:18px 22px;margin:24px 0;font-size:16px}\n.reading-boccalone-toppings :is(.gf-card,.gf-rule,.gf-step){border-top:1px solid var(--c1fflz6z-runtime-border);padding:22px 0;margin:0} .reading-boccalone-toppings :is(.gf-card,.gf-rule) h3{margin-top:0} .reading-boccalone-toppings .gf-rule strong{display:block;margin-bottom:8px}\n.reading-boccalone-toppings .gf-cta{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;margin:0 12px 12px 0;border:1px solid var(--c1fflz6z-runtime-action-bg);border-radius:4px;background:var(--c1fflz6z-runtime-action-bg);color:var(--c1fflz6z-runtime-action-fg);text-decoration:none;font-weight:600}\n.reading-boccalone-toppings .gf-cta.secondary{background:transparent;color:var(--c1fflz6z-runtime-accent)} .reading-boccalone-toppings .bc-ctarow{margin:24px 0;display:flex;flex-wrap:wrap;gap:10px} .reading-boccalone-toppings .bc-ctarow a{margin:0;min-height:48px;display:inline-flex;align-items:center}\n.reading-boccalone-toppings :is(.reading-table,.gf-scroll){max-width:100%;overflow-x:auto;margin:24px 0;overscroll-behavior-x:contain} .reading-boccalone-toppings table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6;margin:0} .reading-boccalone-toppings :is(th,td){padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--c1fflz6z-runtime-border);color:var(--c1fflz6z-runtime-text)} .reading-boccalone-toppings th{background:var(--c1fflz6z-runtime-panel);font-weight:700} .reading-boccalone-toppings .bc-table{display:table}\n.reading-boccalone-toppings details{padding:18px 0;border-bottom:1px solid var(--c1fflz6z-runtime-border)} .reading-boccalone-toppings summary{cursor:pointer;font-weight:600;min-height:44px;padding:8px 0} .reading-boccalone-toppings details p{margin:12px 0 0}\n.reading-boccalone-toppings :is(input,select,textarea,button){font:inherit;color:var(--c1fflz6z-runtime-text);max-width:100%;min-height:44px} .reading-boccalone-toppings :is(input,select,textarea){background:var(--c1fflz6z-runtime-bg);border:1px solid var(--c1fflz6z-runtime-border);padding:10px 12px} .reading-boccalone-toppings :is(img,svg){max-width:100%;height:auto}\n.reading-boccalone-toppings .reading-footer{border-top:1px solid var(--c1fflz6z-runtime-border);margin-top:56px;padding-top:24px;font-size:14px} .reading-boccalone-toppings .reading-footer a{display:inline-flex;min-height:44px;align-items:center}\n@media(max-width:600px){.reading-boccalone-toppings{padding:36px 20px 56px;font-size:16px} .reading-boccalone-toppings h1{font-size:44px} .reading-boccalone-toppings h2{font-size:29px;margin-top:36px} .reading-boccalone-toppings h3{font-size:24px} .reading-boccalone-toppings :is(.bc-intro,h1+p){font-size:18px} .reading-boccalone-toppings :is(th,td){padding:10px;font-size:14px}}\n`), _react2.default.createElement('p', { className: \"reading-kicker\",}, \"Reading\")\n\n\n      , _react2.default.createElement('h1', { id: \"bc-title\",}, d.h1)\n      , _react2.default.createElement('p', { className: \"bc-intro\",}, d.intro)\n      , d.primaryCtas && d.primaryCtas.length ? (\n        _react2.default.createElement('div', { className: \"bc-ctarow\",}\n          , d.primaryCtas.map((c, i) => (\n            _react2.default.createElement('a', { key: i, href: c.href, style: btn(i === 0 ? \"primary\" : \"ghost\"),}, c.label)\n          ))\n        )\n      ) : null\n\n      , d.notice ? _react2.default.createElement('p', { className: \"bc-warn\",}, d.notice) : null\n\n      , d.inShort ? (\n        _react2.default.createElement('section', { 'aria-label': \"In short\" ,}\n          , _react2.default.createElement('h2', null, \"In short\" )\n          , _react2.default.createElement('p', null, d.inShort)\n        )\n      ) : null\n\n      , d.whoFor && d.whoFor.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"Who this is for\"   ,}\n          , _react2.default.createElement('h2', null, \"Who this is for\"   )\n          , _react2.default.createElement('ul', null, d.whoFor.map((x, i) => _react2.default.createElement('li', { key: i,}, x)))\n        )\n      ) : null\n\n      , d.whenToUse && d.whenToUse.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"When to use this\"   ,}\n          , _react2.default.createElement('h2', null, \"When to use this\"   )\n          , _react2.default.createElement('ul', null, d.whenToUse.map((x, i) => _react2.default.createElement('li', { key: i,}, x)))\n        )\n      ) : null\n\n      , d.sections.map((s, i) => (\n        _react2.default.createElement('section', { key: i, 'aria-label': s.heading,}\n          , _react2.default.createElement('h2', null, s.heading)\n          , (s.paragraphs || []).map((pp, j) => _react2.default.createElement('p', { key: j,}, pp))\n          , s.table ? (\n            _react2.default.createElement('div', { className: \"reading-table\", tabIndex: 0, role: \"region\", 'aria-label': \"Scrollable reference table\"  ,}, _react2.default.createElement('table', { className: \"bc-table\",}\n              , _react2.default.createElement('thead', null, _react2.default.createElement('tr', null, s.table.head.map((h, j) => _react2.default.createElement('th', { key: j,}, h))))\n              , _react2.default.createElement('tbody', null\n                , s.table.rows.map((r, j) => (\n                  _react2.default.createElement('tr', { key: j,}, r.map((c, k) => _react2.default.createElement('td', { key: k,}, c)))\n                ))\n              )\n            ))\n          ) : null\n          , (s.bullets || []).length ? (\n            _react2.default.createElement('ul', null\n              , s.bullets.map((b, j) => (\n                _react2.default.createElement('li', { key: j,}, b.href ? _react2.default.createElement('a', { href: b.href,}, b.text) : b.text)\n              ))\n            )\n          ) : null\n          , s.note ? _react2.default.createElement('p', { className: \"bc-callout\",}, s.note) : null\n          , s.warn ? _react2.default.createElement('p', { className: \"bc-warn\",}, s.warn) : null\n        )\n      ))\n\n      , d.related && d.related.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"Related pages\" ,}\n          , _react2.default.createElement('h2', null, \"Where to go next\"   )\n          , _react2.default.createElement('ul', null, d.related.map((r, i) => _react2.default.createElement('li', { key: i,}, _react2.default.createElement('a', { href: r.href,}, r.label))))\n        )\n      ) : null\n\n      , d.faqs && d.faqs.length ? (\n        _react2.default.createElement('section', { 'aria-label': \"Frequently asked questions\"  ,}\n          , _react2.default.createElement('h2', null, \"Frequently asked questions\"  )\n          , d.faqs.map((f, i) => (\n            _react2.default.createElement('details', { key: i,}\n              , _react2.default.createElement('summary', null, f.q)\n              , _react2.default.createElement('p', null, f.a)\n            )\n          ))\n        )\n      ) : null\n\n      , d.closingCtaHeading ? (\n        _react2.default.createElement('section', { 'aria-label': \"Next step\" ,}\n          , _react2.default.createElement('h2', null, d.closingCtaHeading)\n          , _react2.default.createElement('p', null, d.closingCtaText)\n          , _react2.default.createElement('div', { className: \"bc-ctarow\",}\n            , (d.closingCtas || []).map((c, i) => (\n              _react2.default.createElement('a', { key: i, href: c.href, style: btn(i === 0 ? \"primary\" : \"ghost\"),}, c.label)\n            ))\n          )\n        )\n      ) : null\n    , _react2.default.createElement('aside', { className: \"reading-footer\",}, _react2.default.createElement('a', { href: \"/\",}, \"Back to Boccalone\"  )))\n  );\n} exports.default = ToppingsPage;"}