[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"sanity-secure:{\n  \"regionTheme\": *[_type == \"theme\" && language == $locale][0] {\n    ...,\n    activeAnnouncement->{...},\n    \"mainNavigation\": \nmainNav->{\n  \"topLevelMenuItems\": navigationMenu.topLevelMenuItems[] {\n    title,\n    \"submenuLists\": submenuLists[] {\n      submenuListTitle,\n      \"submenuListItems\": submenuListItems[] {\n        \n  ...\n,\n        \n_type == 'link.internal' => {\n  ...,\n  newWindow,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n}\n}\n,\n        \n  _type == 'link.ssu' => {\n  ...\n}\n,\n      }\n    },\n    \"additionalInfo\": additionalInfo[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    }\n  },\n  \"menuActions\": headerActions[] {\n    _type,\n    _key,\n    \"internalLink\": internalLink { \n_type == 'link.internal' => {\n  ...,\n  newWindow,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n}\n}\n },\n    \"externalLink\": externalLink { \n  ...\n },\n    \"ssuLink\": ssuLink { \n  _type == 'link.ssu' => {\n  ...\n}\n },\n    appstoreLink,\n    button,\n  },\n  \"mobileHeaderActionKey\": mobileHeaderActionKey,\n}\n,\n    mainFooter->{\nfootnote,\n'pageLinks': coalesce(pageLinks[] {\n  \n  ...\n,\n  \n_type == 'link.internal' => {\n  ...,\n  newWindow,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n}\n}\n,\n  \n  _type == 'link.ssu' => {\n  ...\n}\n,\n}, []),\n'socialLinks': coalesce(socialLinks[] {\n  \n  _type == 'link.social' => {\n    _type,\n    _key,\n    title,\n    url,\n    icon,\n  }\n,\n}, []),\n'legalLinks': coalesce(legalLinks[] {\n  \n  ...\n,\n  \n_type == 'link.internal' => {\n  ...,\n  newWindow,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n}\n}\n,\n  \n  _type == 'link.ssu' => {\n  ...\n}\n,\n}, []),\n},\n  },\n  \"defaultSeo\": *[_type == \"config.seo\"][0] {\n    \"siteTitle\": siteTitle[_key == $locale][0].value,\n    \"favicon\": favicon.asset,\n    titleSeparator,\n    siteUrl,\n    withSiteTitle,\n    \"metaTitle\": seoSocial.metaTitle[_key == $locale][0].value,\n    \"metaTitleFallback\": seoSocial.metaTitle[_key == \"en-gb\"][0].value,\n    \"metaDescription\": seoSocial.metaDescription[_key == $locale][0].value,\n    \"metaDescriptionFallback\": seoSocial.metaDescription[_key == \"en-gb\"][0].value,\n    \"mobileAppDescription\": seoSocial.mobileAppDescription[_key == $locale][0].value,\n    \"mobileAppDescriptionFallback\": seoSocial.mobileAppDescription[_key == \"en-gb\"][0].value,\n    \"socialImage\": seoSocial.socialImage.asset,\n  },\n  \"appStores\": *[_type == \"config.appstores\"][0] {\n    \"modalTitleAppStoreDownload\": coalesce(\n      modalTitleAppStoreDownload[_key == $locale][0].value,\n      modalTitleAppStoreDownload[_key == \"en-gb\"][0].value,\n    ),\n    \"appleAppStore\": coalesce(\n      appleAppStore[_key == $locale][0].value,\n      appleAppStore[_key == \"en-gb\"][0].value,\n    ),\n    \"googlePlayStore\": coalesce(\n      googlePlayStore[_key == $locale][0].value,\n      googlePlayStore[_key == \"en-gb\"][0].value,\n    ),\n    \"huaweiAppGallery\": coalesce(\n      huaweiAppGallery[_key == $locale][0].value,\n      huaweiAppGallery[_key == \"en-gb\"][0].value,\n    ),\n    \"appleAppStoreBadge\": coalesce(\n      appleAppStoreBadge[_key == $locale][0].value.asset->url,\n      appleAppStoreBadge[_key == \"en-gb\"][0].value.asset->url,\n    ),\n    \"googlePlayStoreBadge\": coalesce(\n      googlePlayStoreBadge[_key == $locale][0].value.asset->url,\n      googlePlayStoreBadge[_key == \"en-gb\"][0].value.asset->url,\n    ),\n    \"huaweiAppGalleryBadge\": coalesce(\n      huaweiAppGalleryBadge[_key == $locale][0].value.asset->url,\n      huaweiAppGalleryBadge[_key == \"en-gb\"][0].value.asset->url,\n    ),\n  },\n  \"social\": *[_type == \"config.social\"][0] {\n    \"Facebook\": Facebook[_key == $locale][0].value,\n    \"FacebookAPIKey\": FacebookAPIKey[_key == $locale][0].value,\n    \"Instagram\": Instagram[_key == $locale][0].value,\n    \"LinkedIn\": LinkedIn[_key == $locale][0].value,\n    \"Twitter\": Twitter[_key == $locale][0].value,\n    \"YouTube\": YouTube[_key == $locale][0].value,\n    \"TikTok\": TikTok[_key == $locale][0].value,\n  },\n  \"slugs\": {\n    \"blog\": *[_id == $blogSingletonDocId][0].slug.current,\n    \"careers\": *[_id == $careersSingletonDocId][0].slug.current,\n    \"pressReleases\": *[_id == $pressReleaseSingletonDocId][0].slug.current,\n  },\n  \"fallbackImages\": *[_type == \"config.placeholderImages\"][0] {\n    \"press\": defaultImagePress {\n      fit,\n      alt,\n      asset,\n    },\n    \"resource\": defaultImageResources {\n      fit,\n      alt,\n      asset\n    }\n  }\n}:{\"locale\":\"en-us\",\"blogSingletonDocId\":\"singleton-pages-en-us-about-food-waste-blog-home\",\"careersSingletonDocId\":\"singleton-careerPages-en-us-careers-home\",\"pressReleaseSingletonDocId\":\"singleton-pages-en-us-press-home\"}":3,"sanity-secure:{\n  \"page\": *[_type == $type && language == $locale && slug.current == $slug && true && (!defined($parent) || parent->slug.current == $parent) && (!defined($grandParent) || parent->parent->slug.current == $grandParent) && (!defined($greatGrandParent) || parent->parent->parent->slug.current == $greatGrandParent)][0] {\n    \n  _type,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n,\n  parent,\n  language,\n  pageVisibility,\n  seoSocial,\n  hideHeader,\n  \"_translations\": *[_type == \"translation.metadata\" && references(^._id)].translations[].value->{\n    title,\n    \"slug\": slug.current,\n    language\n  },\n  _createdAt,\n  _updatedAt,\n  publishedAt,\n  updatedAt,\n  pretitle,\n  title,\n  author->{\n    name,\n    slug,\n    \n  \"jobTitle\": coalesce(\n    jobTitle[_key == $locale][0].value,\n    jobTitle[_key == \"en-gb\"][0].value,\n  )\n,\n    image,\n    \"hasBio\": count(bio[_key == $locale][0].value[children[].text match \"?*\"]) > 0,\n  },\n  slug,\n  parent,\n  image,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  migrated,\n  contentChoice,\n  pageContent,\n  categories\n,\n    defined($defaultPageBlocksDocId) => {\n      \"defaultPageBlocks\": *[_id == $defaultPageBlocksDocId][0].content[] {\n        \n  ...,\n  content[] {\n    \n  ...,\n  _type == \"modularContentBlocks.inner.title\"=>{\ntitle[] {\n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n},\npreTitle[] {\n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n},\ndescription[] {\n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n}\n},_type == \"modularContentBlocks.inner.baseText\"=>{\n  text[] {\n  \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n  tableData {\n      ...,\n      rows[] {\n        ...,\n        cells[] {\n          ...,\n          text[] {\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      }\n    }\n  }\n},_type == \"modularContentBlocks.inner.buttonGroup\"=>{\n  ...,\n  buttons[] {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    }\n  }\n},_type == \"modularContentBlocks.inner.salesforceForms\"=>{\n  salesforceForm->{\n  ...,\n  fieldsTexts {\n    ...,\n    noteText[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n    },\n  },\n  platformOptions {\n    ...,\n    platformOptionsValidationMessage[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n    },\n  },\n  blockerInputTexts {\n    ...,\n    blockerValidationMessage[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n    },\n  }\n}},_type == \"modularContentBlocks.inner.faq\"=>{\n  \"items\": coalesce(\n    onetime.items[!($locale in coalesce(hiddenInLocales, []))] {\n    _key,\n    analyticsProperty,\n    question,\n    answer[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    existing->items[!($locale in coalesce(hiddenInLocales, []))] {\n      _key,\n      \n  \"analyticsProperty\": coalesce(\n    analyticsProperty[_key == $locale][0].value,\n    analyticsProperty[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  )\n},_type == \"modularContentBlocks.inner.statistics\"=>{\n   ...,\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n   \"items\": coalesce(items[] {\n      _type==\"onetime\" => {\n...,\n},\n      _type==\"existing\"=> @->{\n        icon,\n        \n  \"prefix\": coalesce(\n    prefix[_key == $locale][0].value,\n    prefix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"stat\": coalesce(\n    stat[_key == $locale][0].value,\n    stat[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"suffix\": coalesce(\n    suffix[_key == $locale][0].value,\n    suffix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"context\": coalesce(\n    context[_key == $locale][0].value,\n    context[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"content\": coalesce(\n    content[_key == $locale][0].value,\n    content[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"source\": coalesce(\n    source[_key == $locale][0].value,\n    source[_key == \"en-gb\"][0].value,\n  )\n,\n      }\n    }, [])\n },_type == \"modularContentBlocks.inner.people\"=>{\n    people[]->{\n      ...,\n      \n  \"jobTitle\": coalesce(\n    jobTitle[_key == $locale][0].value,\n    jobTitle[_key == \"en-gb\"][0].value,\n  )\n\n    }\n},_type == \"modularContentBlocks.inner.ticker\"=>{\n  ...,\n  items[] {\n    _type == 'onetime' => {\n      name\n    },\n    _type == 'existing' => @->{\n      name\n    }\n  },\n  logos[]->{\n    ...,\n    \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n    \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n  }\n},_type == \"modularContentBlocks.inner.callout\"=>{\n   ...,\n   \"content\": coalesce(content[] {\n      ...,\n      title[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      subtitle[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n   }, false),\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n },_type == \"modularContentBlocks.inner.forms\"=>{\n  ...,\n  form->{\n    \n  ...,\n  notifications[] {\n    _type,\n    _key,\n  },\n  fields[] {\n    ...,\n    richValidationMessage[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    },\n    noteText[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    }\n  },\n  confirmation {\n    \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  contentBlocks[] {\n    \n  ...,\n  _type == \"modularContentBlocks.inner.buttonGroup\" => {\n    \n  ...,\n  buttons[] {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.people\" => {\n    \n    people[]->{\n      ...,\n      \n  \"jobTitle\": coalesce(\n    jobTitle[_key == $locale][0].value,\n    jobTitle[_key == \"en-gb\"][0].value,\n  )\n\n    }\n\n  },\n  _type == \"modularContentBlocks.inner.title\" => {\n    \n  ...,\n  title[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.baseText\" => {\n    \n  text[] {\n  \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n  tableData {\n      ...,\n      rows[] {\n        ...,\n        cells[] {\n          ...,\n          text[] {\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      }\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.faq\" => {\n    \n  \"items\": coalesce(\n    onetime.items[!($locale in coalesce(hiddenInLocales, []))] {\n    _key,\n    analyticsProperty,\n    question,\n    answer[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    existing->items[!($locale in coalesce(hiddenInLocales, []))] {\n      _key,\n      \n  \"analyticsProperty\": coalesce(\n    analyticsProperty[_key == $locale][0].value,\n    analyticsProperty[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  )\n\n  },\n  _type == \"modularContentBlocks.inner.statistics\" => {\n    \n   ...,\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n   \"items\": coalesce(items[] {\n      _type==\"onetime\" => {\n...,\n},\n      _type==\"existing\"=> @->{\n        icon,\n        \n  \"prefix\": coalesce(\n    prefix[_key == $locale][0].value,\n    prefix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"stat\": coalesce(\n    stat[_key == $locale][0].value,\n    stat[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"suffix\": coalesce(\n    suffix[_key == $locale][0].value,\n    suffix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"context\": coalesce(\n    context[_key == $locale][0].value,\n    context[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"content\": coalesce(\n    content[_key == $locale][0].value,\n    content[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"source\": coalesce(\n    source[_key == $locale][0].value,\n    source[_key == \"en-gb\"][0].value,\n  )\n,\n      }\n    }, [])\n \n  },\n  _type == \"modularContentBlocks.inner.callout\" => {\n    \n   ...,\n   \"content\": coalesce(content[] {\n      ...,\n      title[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      subtitle[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n   }, false),\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n \n  },\n  _type == \"modularContentBlocks.inner.ticker\" => {\n    \n  ...,\n  items[] {\n    _type == 'onetime' => {\n      name\n    },\n    _type == 'existing' => @->{\n      name\n    }\n  },\n  logos[]->{\n    ...,\n    \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n    \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.video\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.profilePicture\" => {\n    ...,\n    \"person\": person->\n  },\n  _type == \"modularContentBlocks.inner.partnerLogo\" => {\n    ...,\n    partnerLogo->{\n      ...,\n      \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n    }\n  },\n  _type == \"modularContentBlocks.inner.listing\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.tiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  link {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    },\n  },\n  \u002F\u002F Make sure that links are not included if containsLink is false\n  containsLink == false => {\n    \"link\": null,\n  }\n}\n\n  },\n  _type == \"modularContentBlocks.inner.nudge\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.solutionTiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  link {\n    ...,\n    link->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n\n    },\n  },\n}\n\n  },\n  _type == \"modularContentBlocks.inner.campaignCounter\" => {\n    \n  },\n  _type == \"modularContentBlocks.outer.privacyControls\" => {\n    \n  ...,\n  description[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.forms\" => {\n    \n  ...,\n  form->{\n    _id,\n    title,\n    submitButtonText,\n    fields[] {\n      ...,\n      richValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    confirmation {\n      \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.salesforceForms\" => {\n    \n  ...,\n  salesforceForm->{\n    _id,\n    title,\n    formUrl,\n    formOid,\n    productInterest,\n    submitButtonText,\n    fieldsTexts {\n      ...,\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    platformOptions {\n      ...,\n      platformOptionsValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    blockerInputTexts {\n      ...,\n      blockerValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  }\n\n  }\n\n  }\n\n  }\n\n  },\n},_type == \"modularContentBlocks.inner.profilePicture\"=>{\nperson->\n},_type == \"modularContentBlocks.inner.tiles\"=>{\n...,\ntiles[] {\n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  link {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    },\n  },\n  \u002F\u002F Make sure that links are not included if containsLink is false\n  containsLink == false => {\n    \"link\": null,\n  }\n}\n},_type == \"modularContentBlocks.inner.solutionTiles\"=>{\n...,\ntiles[] {\n  ...,\n  link {\n    ...,\n    link->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n\n    },\n  },\n}\n}\n\n  },\n  _type == \"modularContentBlocks.outer.carouselSection\"=>{ \n  ...,\n  preCarouselContent[] {\n    ...,\n    person->,\n    partnerLogo->{\n      ...,\n      \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n    },\n },\n slides[] {\n  ...,\n  content[] {\n    ...,\n    person->,\n    partnerLogo->{\n      ...,\n      \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n    },\n  }\n }\n },_type == \"modularContentBlocks.outer.tickerSection\"=>{ \n  ...,\n  items[] {\n    _type == 'onetime' => {\n      name\n    },\n    _type == 'existing' => @->{\n      name\n    }\n  },\n  logos[]->{\n      ...,\n      \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n  }\n },_type == \"modularContentBlocks.outer.stepsSection\"=>{ \n  ...,\n  slides[] {\n    ...,\n    content[] {\n      ...,\n      _type == \"modularContentBlocks.inner.buttonGroup\" => {\n        buttons[] {\n          ...,\n          link {\n            ...,\n            \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n          },\n        },\n      },\n    },\n  },\n  buttons[] {\n    ...,\n    link {\n      ...,\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      }\n    }\n },_type == \"modularContentBlocks.outer.cta\"=>{ \n  ...,\n  buttons[] {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    }\n  }\n },_type == \"modularContentBlocks.outer.careers\"=>{ \n  ...,\n  \"defaultResultsLabels\": *[_id == \"singleton-careerPages-en-gb-careers-home\" && language == \"en-gb\"]{\n  content[][_type == \"modularContentBlocks.outer.careers\"] {resultsLabels}\n  }\n },_type == \"modularContentBlocks.outer.solutionFinder\"=>{ \n  vendorTypes[]->{\n    _id,\n    _type,\n    title,\n    icon,\n  }\n },_type == \"modularContentBlocks.outer.supportSection\"=>{ \n  supportPath->{\n    ...,\n    \n    itemChoices[] {\n      ...,\n      faqsToDisplay[]->{\n        items[!($locale in coalesce(hiddenInLocales, []))] {\n          _key,\n          analyticsProperty,\n          \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n          \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n            \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      },\n      formToDisplay->{\n        \n  ...,\n  notifications[] {\n    _type,\n    _key,\n  },\n  fields[] {\n    ...,\n    richValidationMessage[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    },\n    noteText[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    }\n  },\n  confirmation {\n    \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  contentBlocks[] {\n    \n  ...,\n  _type == \"modularContentBlocks.inner.buttonGroup\" => {\n    \n  ...,\n  buttons[] {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.people\" => {\n    \n    people[]->{\n      ...,\n      \n  \"jobTitle\": coalesce(\n    jobTitle[_key == $locale][0].value,\n    jobTitle[_key == \"en-gb\"][0].value,\n  )\n\n    }\n\n  },\n  _type == \"modularContentBlocks.inner.title\" => {\n    \n  ...,\n  title[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.baseText\" => {\n    \n  text[] {\n  \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n  tableData {\n      ...,\n      rows[] {\n        ...,\n        cells[] {\n          ...,\n          text[] {\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      }\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.faq\" => {\n    \n  \"items\": coalesce(\n    onetime.items[!($locale in coalesce(hiddenInLocales, []))] {\n    _key,\n    analyticsProperty,\n    question,\n    answer[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    existing->items[!($locale in coalesce(hiddenInLocales, []))] {\n      _key,\n      \n  \"analyticsProperty\": coalesce(\n    analyticsProperty[_key == $locale][0].value,\n    analyticsProperty[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  )\n\n  },\n  _type == \"modularContentBlocks.inner.statistics\" => {\n    \n   ...,\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n   \"items\": coalesce(items[] {\n      _type==\"onetime\" => {\n...,\n},\n      _type==\"existing\"=> @->{\n        icon,\n        \n  \"prefix\": coalesce(\n    prefix[_key == $locale][0].value,\n    prefix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"stat\": coalesce(\n    stat[_key == $locale][0].value,\n    stat[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"suffix\": coalesce(\n    suffix[_key == $locale][0].value,\n    suffix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"context\": coalesce(\n    context[_key == $locale][0].value,\n    context[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"content\": coalesce(\n    content[_key == $locale][0].value,\n    content[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"source\": coalesce(\n    source[_key == $locale][0].value,\n    source[_key == \"en-gb\"][0].value,\n  )\n,\n      }\n    }, [])\n \n  },\n  _type == \"modularContentBlocks.inner.callout\" => {\n    \n   ...,\n   \"content\": coalesce(content[] {\n      ...,\n      title[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      subtitle[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n   }, false),\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n \n  },\n  _type == \"modularContentBlocks.inner.ticker\" => {\n    \n  ...,\n  items[] {\n    _type == 'onetime' => {\n      name\n    },\n    _type == 'existing' => @->{\n      name\n    }\n  },\n  logos[]->{\n    ...,\n    \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n    \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.video\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.profilePicture\" => {\n    ...,\n    \"person\": person->\n  },\n  _type == \"modularContentBlocks.inner.partnerLogo\" => {\n    ...,\n    partnerLogo->{\n      ...,\n      \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n    }\n  },\n  _type == \"modularContentBlocks.inner.listing\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.tiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  link {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    },\n  },\n  \u002F\u002F Make sure that links are not included if containsLink is false\n  containsLink == false => {\n    \"link\": null,\n  }\n}\n\n  },\n  _type == \"modularContentBlocks.inner.nudge\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.solutionTiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  link {\n    ...,\n    link->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n\n    },\n  },\n}\n\n  },\n  _type == \"modularContentBlocks.inner.campaignCounter\" => {\n    \n  },\n  _type == \"modularContentBlocks.outer.privacyControls\" => {\n    \n  ...,\n  description[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.forms\" => {\n    \n  ...,\n  form->{\n    _id,\n    title,\n    submitButtonText,\n    fields[] {\n      ...,\n      richValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    confirmation {\n      \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.salesforceForms\" => {\n    \n  ...,\n  salesforceForm->{\n    _id,\n    title,\n    formUrl,\n    formOid,\n    productInterest,\n    submitButtonText,\n    fieldsTexts {\n      ...,\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    platformOptions {\n      ...,\n      platformOptionsValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    blockerInputTexts {\n      ...,\n      blockerValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  }\n\n  }\n\n  }\n\n  }\n\n      },\n      \n    itemChoices[] {\n      ...,\n      faqsToDisplay[]->{\n        items[!($locale in coalesce(hiddenInLocales, []))] {\n          _key,\n          analyticsProperty,\n          \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n          \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n            \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      },\n      formToDisplay->{\n        \n  ...,\n  notifications[] {\n    _type,\n    _key,\n  },\n  fields[] {\n    ...,\n    richValidationMessage[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    },\n    noteText[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    }\n  },\n  confirmation {\n    \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  contentBlocks[] {\n    \n  ...,\n  _type == \"modularContentBlocks.inner.buttonGroup\" => {\n    \n  ...,\n  buttons[] {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.people\" => {\n    \n    people[]->{\n      ...,\n      \n  \"jobTitle\": coalesce(\n    jobTitle[_key == $locale][0].value,\n    jobTitle[_key == \"en-gb\"][0].value,\n  )\n\n    }\n\n  },\n  _type == \"modularContentBlocks.inner.title\" => {\n    \n  ...,\n  title[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.baseText\" => {\n    \n  text[] {\n  \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n  tableData {\n      ...,\n      rows[] {\n        ...,\n        cells[] {\n          ...,\n          text[] {\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      }\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.faq\" => {\n    \n  \"items\": coalesce(\n    onetime.items[!($locale in coalesce(hiddenInLocales, []))] {\n    _key,\n    analyticsProperty,\n    question,\n    answer[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    existing->items[!($locale in coalesce(hiddenInLocales, []))] {\n      _key,\n      \n  \"analyticsProperty\": coalesce(\n    analyticsProperty[_key == $locale][0].value,\n    analyticsProperty[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  )\n\n  },\n  _type == \"modularContentBlocks.inner.statistics\" => {\n    \n   ...,\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n   \"items\": coalesce(items[] {\n      _type==\"onetime\" => {\n...,\n},\n      _type==\"existing\"=> @->{\n        icon,\n        \n  \"prefix\": coalesce(\n    prefix[_key == $locale][0].value,\n    prefix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"stat\": coalesce(\n    stat[_key == $locale][0].value,\n    stat[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"suffix\": coalesce(\n    suffix[_key == $locale][0].value,\n    suffix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"context\": coalesce(\n    context[_key == $locale][0].value,\n    context[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"content\": coalesce(\n    content[_key == $locale][0].value,\n    content[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"source\": coalesce(\n    source[_key == $locale][0].value,\n    source[_key == \"en-gb\"][0].value,\n  )\n,\n      }\n    }, [])\n \n  },\n  _type == \"modularContentBlocks.inner.callout\" => {\n    \n   ...,\n   \"content\": coalesce(content[] {\n      ...,\n      title[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      subtitle[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n   }, false),\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n \n  },\n  _type == \"modularContentBlocks.inner.ticker\" => {\n    \n  ...,\n  items[] {\n    _type == 'onetime' => {\n      name\n    },\n    _type == 'existing' => @->{\n      name\n    }\n  },\n  logos[]->{\n    ...,\n    \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n    \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.video\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.profilePicture\" => {\n    ...,\n    \"person\": person->\n  },\n  _type == \"modularContentBlocks.inner.partnerLogo\" => {\n    ...,\n    partnerLogo->{\n      ...,\n      \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n    }\n  },\n  _type == \"modularContentBlocks.inner.listing\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.tiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  link {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    },\n  },\n  \u002F\u002F Make sure that links are not included if containsLink is false\n  containsLink == false => {\n    \"link\": null,\n  }\n}\n\n  },\n  _type == \"modularContentBlocks.inner.nudge\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.solutionTiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  link {\n    ...,\n    link->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n\n    },\n  },\n}\n\n  },\n  _type == \"modularContentBlocks.inner.campaignCounter\" => {\n    \n  },\n  _type == \"modularContentBlocks.outer.privacyControls\" => {\n    \n  ...,\n  description[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.forms\" => {\n    \n  ...,\n  form->{\n    _id,\n    title,\n    submitButtonText,\n    fields[] {\n      ...,\n      richValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    confirmation {\n      \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.salesforceForms\" => {\n    \n  ...,\n  salesforceForm->{\n    _id,\n    title,\n    formUrl,\n    formOid,\n    productInterest,\n    submitButtonText,\n    fieldsTexts {\n      ...,\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    platformOptions {\n      ...,\n      platformOptionsValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    blockerInputTexts {\n      ...,\n      blockerValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  }\n\n  }\n\n  }\n\n  }\n\n      },\n      \n    itemChoices[] {\n      ...,\n      faqsToDisplay[]->{\n        items[!($locale in coalesce(hiddenInLocales, []))] {\n          _key,\n          analyticsProperty,\n          \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n          \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n            \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      },\n      formToDisplay->{\n        \n  ...,\n  notifications[] {\n    _type,\n    _key,\n  },\n  fields[] {\n    ...,\n    richValidationMessage[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    },\n    noteText[] {\n      \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n    }\n  },\n  confirmation {\n    \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  contentBlocks[] {\n    \n  ...,\n  _type == \"modularContentBlocks.inner.buttonGroup\" => {\n    \n  ...,\n  buttons[] {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.people\" => {\n    \n    people[]->{\n      ...,\n      \n  \"jobTitle\": coalesce(\n    jobTitle[_key == $locale][0].value,\n    jobTitle[_key == \"en-gb\"][0].value,\n  )\n\n    }\n\n  },\n  _type == \"modularContentBlocks.inner.title\" => {\n    \n  ...,\n  title[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.baseText\" => {\n    \n  text[] {\n  \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n,\n  tableData {\n      ...,\n      rows[] {\n        ...,\n        cells[] {\n          ...,\n          text[] {\n            \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n          }\n        }\n      }\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.faq\" => {\n    \n  \"items\": coalesce(\n    onetime.items[!($locale in coalesce(hiddenInLocales, []))] {\n    _key,\n    analyticsProperty,\n    question,\n    answer[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    existing->items[!($locale in coalesce(hiddenInLocales, []))] {\n      _key,\n      \n  \"analyticsProperty\": coalesce(\n    analyticsProperty[_key == $locale][0].value,\n    analyticsProperty[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"question\": coalesce(\n    question[_key == $locale][0].value,\n    question[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"answer\": coalesce(\n    answer[_key == $locale][0].value,\n    answer[_key == \"en-gb\"][0].value,\n  )\n[] {\n        \n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n,\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  )\n\n  },\n  _type == \"modularContentBlocks.inner.statistics\" => {\n    \n   ...,\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n   \"items\": coalesce(items[] {\n      _type==\"onetime\" => {\n...,\n},\n      _type==\"existing\"=> @->{\n        icon,\n        \n  \"prefix\": coalesce(\n    prefix[_key == $locale][0].value,\n    prefix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"stat\": coalesce(\n    stat[_key == $locale][0].value,\n    stat[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"suffix\": coalesce(\n    suffix[_key == $locale][0].value,\n    suffix[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"context\": coalesce(\n    context[_key == $locale][0].value,\n    context[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"content\": coalesce(\n    content[_key == $locale][0].value,\n    content[_key == \"en-gb\"][0].value,\n  )\n,\n        \n  \"source\": coalesce(\n    source[_key == $locale][0].value,\n    source[_key == \"en-gb\"][0].value,\n  )\n,\n      }\n    }, [])\n \n  },\n  _type == \"modularContentBlocks.inner.callout\" => {\n    \n   ...,\n   \"content\": coalesce(content[] {\n      ...,\n      title[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      subtitle[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n   }, false),\n   \"button\": coalesce(button[][0] {\n      ...,\n      link {\n        \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n      },\n  }, false),\n \n  },\n  _type == \"modularContentBlocks.inner.ticker\" => {\n    \n  ...,\n  items[] {\n    _type == 'onetime' => {\n      name\n    },\n    _type == 'existing' => @->{\n      name\n    }\n  },\n  logos[]->{\n    ...,\n    \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n    \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.video\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.profilePicture\" => {\n    ...,\n    \"person\": person->\n  },\n  _type == \"modularContentBlocks.inner.partnerLogo\" => {\n    ...,\n    partnerLogo->{\n      ...,\n      \n  \"partnerName\": coalesce(\n    partnerName[_key == $locale][0].value,\n    partnerName[_key == \"en-gb\"][0].value,\n  )\n,\n      \n  \"partnerLogo\": coalesce(\n    partnerLogo[_key == $locale][0].value,\n    partnerLogo[_key == \"en-gb\"][0].value,\n  )\n,\n    }\n  },\n  _type == \"modularContentBlocks.inner.listing\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.tiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  content[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  link {\n    ...,\n    link {\n      \n  ...,\n  linkType == 'internal' => {\n    'internalAnchor': internalAnchor.internal,\n    'reference': internal->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n,\n    }\n  }\n\n    },\n  },\n  \u002F\u002F Make sure that links are not included if containsLink is false\n  containsLink == false => {\n    \"link\": null,\n  }\n}\n\n  },\n  _type == \"modularContentBlocks.inner.nudge\" => {\n    \n  },\n  _type == \"modularContentBlocks.inner.solutionTiles\" => {\n    \n...,\ntiles[] {\n  ...,\n  link {\n    ...,\n    link->{\n      \n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n\n    },\n  },\n}\n\n  },\n  _type == \"modularContentBlocks.inner.campaignCounter\" => {\n    \n  },\n  _type == \"modularContentBlocks.outer.privacyControls\" => {\n    \n  ...,\n  description[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.forms\" => {\n    \n  ...,\n  form->{\n    _id,\n    title,\n    submitButtonText,\n    fields[] {\n      ...,\n      richValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      },\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    confirmation {\n      \n  \"confirmationType\": coalesce(confirmationType, type),\n  contentRedirectUrl,\n  contentMessage[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n\n    }\n  }\n\n  },\n  _type == \"modularContentBlocks.inner.salesforceForms\" => {\n    \n  ...,\n  salesforceForm->{\n    _id,\n    title,\n    formUrl,\n    formOid,\n    productInterest,\n    submitButtonText,\n    fieldsTexts {\n      ...,\n      noteText[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    platformOptions {\n      ...,\n      platformOptionsValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    },\n    blockerInputTexts {\n      ...,\n      blockerValidationMessage[] {\n        \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n      }\n    }\n  }\n\n  }\n\n  }\n\n  }\n\n      },\n      \n    }\n  \n    }\n  \n    }\n  ,\n  }\n },_type == \"modularContentBlocks.outer.signatureGenerator\"=>{ \n  signatureGeneratorFragment->{\n    ...,\n    },\n    \"defaultPronouns\": *[_type == \"fragments.signatureGenerator\" && language == \"en-gb\"]{\n      pronouns,\n    }\n },_type == \"modularContentBlocks.outer.referral\"=>{ \n  ...,\n  descriptionUnhappy[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n  description[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  },\n },_type == \"modularContentBlocks.outer.cookieList\"=>{ \n  \u002F\u002F No fields needed for CookieList\n },_type == \"modularContentBlocks.outer.locationFinder\"=>{ \n  ...,\n  \"staticTranslations\": *[\n      _type == \"fragments.surpriseBag\" && language == $locale][0],\n },_type == \"modularContentBlocks.outer.privacyControls\"=>{ \n  ...,\n  description[] {\n    \n...,\nchildren[] {\n  ...,\n  \n  \"text\": select(\n    dataType == \"statistics\" => coalesce(\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == $locale][0].value,\n      *[_type == \"statistics\" && _id == coalesce(^.text._ref, ^.text)][0].stat[_key == \"en-gb\"][0].value,\n    ),\n    dataType == \"people\" => *[\n      _type == \"people\" && _id == coalesce(^.text._ref, ^.text)\n    ][0].name,\n    coalesce(^.text._ref, ^.text, text)\n  ),\n\n},\nmarkDefs[] {\n  ...,\n  reference->{\n  _type,\n  slug,\n  \"locale\": language,\n  \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n\n},\n  newWindow,\n  'internalAnchor': internalAnchor.internal\n}\n\n  }\n }\n\n      },\n    },\n  },\n}:{\"type\":\"aboutFoodWaste.blog\",\"defaultPageBlocksDocId\":\"singleton-defaultBlocks-en-us-about-food-waste-blog-single-default-blocks\",\"locale\":\"en-us\",\"greatGrandParent\":null,\"grandParent\":null,\"parent\":\"blog\",\"slug\":\"waste-less-holiday-cooking-12-recipes-to-share-and-save\"}":327,"sanity-secure:\n    *[ _type == $taxonomy && language == \"en-us\"] {\n      _id,\n      title,\n      \"slug\": slug.current,\n    }\n  :{\"taxonomy\":\"\"}":3069,"sanity-secure:{\n    \"totalPosts\": count(*[_type == $type && (!defined($locale) || language == $locale) && true && (!defined($activeFilter) || references(*[_type==$taxonomy && (slug.current in $activeFilter)]._id))]),\n    \"posts\": *[_type == $type && (!defined($locale) || language == $locale) && true && (!defined($activeFilter) || references(*[_type==$taxonomy && (slug.current in $activeFilter)]._id))] | order(publishedAt desc) [$sliceStart...$sliceEnd] {\n    _id,\n    _createdAt,\n    publishedAt,\n    updatedAt,\n    language,\n    title,\n    pretitle,\n    image,\n    excerpt,\n    migrated,\n    categories[]->{\n      title,\n      \"slug\": slug.current,\n    },\n    \"content\": pt::text(content),\n    \n  \"slug\": '\u002F'+slug.current,\n  defined(parent) => {\"slug\": '\u002F'+ parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent) => {\"slug\": '\u002F'+parent->parent->slug.current+'\u002F'+parent->slug.current+'\u002F'+slug.current},\n  defined(parent->parent->parent) => {\"slug\": '\u002F'+ parent->parent->parent->slug.current +'\u002F'+parent->parent->slug.current +'\u002F'+parent->slug.current+'\u002F'+slug.current}\n,\n    \"file\": file.asset->,\n    url\n    }\n  }:{\"type\":\"aboutFoodWaste.blog\",\"locale\":\"en-us\",\"page\":1,\"sliceStart\":0,\"sliceEnd\":4,\"activeFilter\":null,\"taxonomy\":\"\",\"sanityKey\":\"listing_vwglvq\"}":3070},{"appStores":4,"defaultSeo":10,"fallbackImages":21,"regionTheme":30,"slugs":320,"social":324},{"appleAppStore":5,"appleAppStoreBadge":6,"googlePlayStore":5,"googlePlayStoreBadge":7,"huaweiAppGallery":5,"huaweiAppGalleryBadge":8,"modalTitleAppStoreDownload":9},"https:\u002F\u002Ftgtg.onelink.me\u002FOGjG\u002Fafd50hls","https:\u002F\u002Fcdn.sanity.io\u002Fimages\u002Fnqimd3nr\u002Fproduction\u002Fceed6a2b4247d22d0e6f9425cad1d5c39af762fe-480x160.png","https:\u002F\u002Fcdn.sanity.io\u002Fimages\u002Fnqimd3nr\u002Fproduction\u002F68072d9f747a9e089548846cecc588ef52bb624e-540x160.png",null,"Download the app and start saving delicious food today",{"favicon":11,"metaDescription":8,"metaDescriptionFallback":14,"metaTitle":8,"metaTitleFallback":15,"mobileAppDescription":8,"mobileAppDescriptionFallback":8,"siteTitle":8,"siteUrl":16,"socialImage":17,"titleSeparator":19,"withSiteTitle":20},{"_ref":12,"_type":13},"image-eb37301e40a80bb500e31e5a939924c582ad7744-512x512-png","reference","The app that lets customers rescue unsold food from shops and restaurants to save it from going to waste. Try it today.","Join Our Food Waste Movement","https:\u002F\u002Ftoogoodtogo.com",{"_ref":18,"_type":13},"image-e45b68b658778f2849b920af8e626567ec51d94b-1440x818-jpg","–","append",{"press":22,"resource":26},{"alt":8,"asset":23,"fit":25},{"_ref":24,"_type":13},"image-b78d00b015d990a35bc429a7b3a849a300872fe5-512x340-png","cover",{"alt":27,"asset":28,"fit":25},"a collection of brochures with one that says 2022 in numbers",{"_ref":29,"_type":13},"image-21d8db28cd1bbe29c6c986dd4798ec9ec79ace1b-1024x680-png",{"_createdAt":31,"_id":32,"_rev":33,"_type":34,"_updatedAt":35,"activeAnnouncement":8,"homepage":36,"language":38,"mainFooter":39,"mainNav":141,"mainNavigation":143},"2024-02-06T12:02:28Z","singleton-theme-en-us","S2mxzCT7dq51nqm7vwud0T","theme","2024-07-02T08:23:41Z",{"_ref":37,"_type":13},"singleton-pages-en-us-homepage","en-us",{"footnote":8,"legalLinks":40,"pageLinks":91,"socialLinks":112},[41,50,55,60,65,70,75,80,86],{"_key":42,"_type":43,"newWindow":44,"otherLocales":45,"reference":46,"title":49},"f8119a1b1bf5","link.internal",true,false,{"_type":47,"locale":38,"slug":48},"legalPages","\u002Flegal","Legal",{"_key":51,"_type":43,"newWindow":44,"otherLocales":45,"reference":52,"title":54},"6708b9b870b1",{"_type":47,"locale":38,"slug":53},"\u002Flegal\u002Fprivacy","Privacy Policy",{"_key":56,"_type":43,"newWindow":44,"otherLocales":45,"reference":57,"title":59},"27a9f2676a90",{"_type":47,"locale":38,"slug":58},"\u002Flegal\u002Fcookie-policy","Cookie Policy",{"_key":61,"_type":43,"newWindow":45,"otherLocales":45,"reference":62,"title":64},"10c9c20bc5f2",{"_type":47,"locale":38,"slug":63},"\u002Flegal\u002Fterms-and-conditions-using-the-app","Terms & Conditions",{"_key":66,"_type":43,"newWindow":44,"otherLocales":45,"reference":67,"title":69},"173270383b82",{"_type":47,"locale":38,"slug":68},"\u002Flegal\u002Fcontact-us","Contact us",{"_key":71,"_type":43,"newWindow":44,"otherLocales":45,"reference":72,"title":74},"5a9de968a793",{"_type":47,"locale":38,"slug":73},"\u002Flegal\u002Fdsa-disclosure","DSA Disclosure",{"_key":76,"_type":43,"newWindow":44,"otherLocales":45,"reference":77,"title":79},"053b1f8cd505",{"_type":47,"locale":38,"slug":78},"\u002Flegal\u002Fprivacy-settings","Do Not Sell or Share My Data",{"_key":81,"_type":43,"newWindow":44,"otherLocales":45,"reference":82,"title":85},"37636b5315eb",{"_type":83,"locale":38,"slug":84},"pages","\u002Ftgtg-claims","Food Waste Sources",{"_key":87,"_type":88,"newWindow":44,"title":89,"url":90},"4431596f1003","link.external","Status","https:\u002F\u002Fstatus.toogoodtogo.com\u002F",[92,98,103,108],{"_key":93,"_type":43,"newWindow":8,"otherLocales":45,"reference":94,"title":97},"5b7e3a106f9e",{"_type":95,"locale":38,"slug":96},"careerPages","\u002Fcareers","Careers",{"_key":99,"_type":43,"newWindow":8,"otherLocales":45,"reference":100,"title":102},"50962d914fe4",{"_type":83,"locale":38,"slug":101},"\u002Fpress","Press",{"_key":104,"_type":43,"newWindow":8,"otherLocales":45,"reference":105,"title":107},"78914bcedf91",{"_type":83,"locale":38,"slug":106},"\u002Fsupport","Support",{"_key":109,"_type":88,"newWindow":44,"title":110,"url":111},"280fc737f6b5","Mystore","https:\u002F\u002Fstore.toogoodtogo.com\u002Flogin",[113,119,123,127,132,136],{"_key":114,"_type":115,"icon":116,"title":117,"url":118},"98a17a45c700","link.social","Linkedin","LinkedIn","https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Ftoo-good-to-go",{"_key":120,"_type":115,"icon":121,"title":121,"url":122},"fd26a3b7a123","Instagram","https:\u002F\u002Fwww.instagram.com\u002Ftoogoodtogo.usa\u002F",{"_key":124,"_type":115,"icon":125,"title":125,"url":126},"5a6f37dc5cfe","Facebook","https:\u002F\u002Fwww.facebook.com\u002FtoogoodtogoUSA\u002F",{"_key":128,"_type":115,"icon":129,"title":130,"url":131},"7abf4217cfde","Tiktok","Tik Tok","https:\u002F\u002Fwww.tiktok.com\u002F@toogoodtogo",{"_key":133,"_type":115,"icon":134,"title":134,"url":135},"c949f075e758","Youtube","https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCBonm_44z7UL0OvhHksBCAw",{"_key":137,"_type":115,"icon":138,"title":139,"url":140},"31d5e2c397ef","X_icon","X","https:\u002F\u002Fwww.twitter.com\u002Ftoogoodtogo",{"_ref":142,"_type":13},"AQVKCBGGRXIlMTy62nqL6C",{"menuActions":144,"mobileHeaderActionKey":146,"topLevelMenuItems":165},[145,153,160],{"_key":146,"_type":147,"appstoreLink":148,"button":8,"externalLink":8,"internalLink":8,"ssuLink":8},"b31127a48261","newHeaderAction.appstoreLink",{"_type":149,"buttonColor":150,"buttonText":151,"variant":152},"appstoreLink","white","Download app","automatic",{"_key":154,"_type":155,"appstoreLink":8,"button":8,"externalLink":8,"internalLink":8,"ssuLink":156},"d3080ad0695e","newHeaderAction.ssuLink",{"_type":157,"newWindow":44,"title":158,"url":159},"link.ssu","Sign up as Business","https:\u002F\u002Fstore.toogoodtogo.com\u002Fonboarding",{"_key":161,"_type":162,"appstoreLink":8,"button":8,"externalLink":163,"internalLink":8,"ssuLink":8},"ab3a15158657","newHeaderAction.externalLink",{"_type":88,"newWindow":44,"title":164,"url":111},"MyStore login",[166,249],{"additionalInfo":8,"submenuLists":167,"title":248},[168,193,229],{"submenuListItems":169,"submenuListTitle":192},[170,175,180,186],{"_key":171,"_type":43,"newWindow":45,"otherLocales":45,"reference":172,"title":174},"b7256c5acbef",{"_type":83,"locale":38,"slug":173},"\u002Fhow-to-collect-too-good-to-go","How to collect a Too Good To Go surprise bag?",{"_key":176,"_type":43,"newWindow":45,"otherLocales":45,"reference":177,"title":179},"7b7825c8941e",{"_type":83,"locale":38,"slug":178},"\u002Fhow-does-the-app-work","How does the app work?",{"_key":181,"_type":43,"newWindow":45,"otherLocales":45,"reference":182,"title":185},"d7cca2808225",{"_type":183,"locale":38,"slug":184},"aboutUs.pages","\u002Fabout-us\u002Fin-my-area","Too Good To Go in my area",{"_key":187,"_type":43,"newWindow":45,"otherLocales":45,"reference":188,"title":191},"d2321ab19b10",{"_type":189,"locale":38,"slug":190},"surpriseBagHome","\u002Ffind","Save good food near you","The app",{"submenuListItems":194,"submenuListTitle":228},[195,200,205,210,215,218,223],{"_key":196,"_type":43,"newWindow":45,"otherLocales":45,"reference":197,"title":199},"9732bb328b6a",{"_type":183,"locale":38,"slug":198},"\u002Fabout-us","About Too Good To Go",{"_key":201,"_type":43,"newWindow":45,"otherLocales":45,"reference":202,"title":204},"ac2fe81a6053",{"_type":183,"locale":38,"slug":203},"\u002Fabout-us\u002Four-history","Our history",{"_key":206,"_type":43,"newWindow":45,"otherLocales":45,"reference":207,"title":209},"901aa40c89be",{"_type":183,"locale":38,"slug":208},"\u002Fabout-us\u002Fb-corp","B Corp",{"_key":211,"_type":43,"newWindow":45,"otherLocales":45,"reference":212,"title":214},"cc89fcc93d23",{"_type":183,"locale":38,"slug":213},"\u002Fabout-us\u002Fesg","ESG",{"_key":216,"_type":43,"newWindow":45,"otherLocales":45,"reference":217,"title":97},"0c358724c797",{"_type":95,"locale":38,"slug":96},{"_key":219,"_type":43,"newWindow":45,"otherLocales":45,"reference":220,"title":222},"1037fa14f9ca",{"_type":183,"locale":38,"slug":221},"\u002Fabout-us\u002Feducation-hub","Education hub",{"_key":224,"_type":43,"newWindow":45,"otherLocales":45,"reference":225,"title":227},"9c393af11ea7",{"_type":83,"locale":38,"slug":226},"\u002Fimpact-report","Impact report","About us",{"submenuListItems":230,"submenuListTitle":247},[231,237,242],{"_key":232,"_type":43,"newWindow":45,"otherLocales":45,"reference":233,"title":236},"54eaf498f7a6",{"_type":234,"locale":38,"slug":235},"aboutFoodWaste.pages","\u002Fabout-food-waste","Food waste facts",{"_key":238,"_type":43,"newWindow":45,"otherLocales":45,"reference":239,"title":241},"cf761fbe8e3f",{"_type":83,"locale":38,"slug":240},"\u002Fresources","Resources",{"_key":243,"_type":43,"newWindow":45,"otherLocales":45,"reference":244,"title":246},"65154cd55a3f",{"_type":83,"locale":38,"slug":245},"\u002Fblog","Too Good To Go blog","About food waste","About",{"additionalInfo":250,"submenuLists":294,"title":319},[251,263,280],{"_key":252,"_type":253,"children":254,"markDefs":261,"style":262},"3fdc88e12206","block",[255],{"_key":256,"_type":257,"marks":258,"text":260},"533e0f75264b","span",[259],"strong","Current stats",[],"normal",{"_key":264,"_type":253,"children":265,"markDefs":279,"style":262},"2acb78382842",[266,270,275],{"_key":267,"_type":257,"marks":268,"text":269},"bcf236ab58a3",[],"\n",{"_key":271,"_type":272,"dataType":273,"text":274},"57cdc8edcaf4","data","statistics","120 million",{"_key":276,"_type":257,"marks":277,"text":278},"2fca042e3d55",[]," registered users on the Too Good To Go app.\n",[],{"_key":281,"_type":253,"children":282,"markDefs":293,"style":262},"5b7478b4863e",[283,286,289],{"_key":276,"_type":257,"marks":284,"text":285},[],"And ",{"_key":287,"_type":272,"dataType":273,"text":288},"bc032c2b02ec","180,000",{"_key":290,"_type":257,"marks":291,"text":292},"301cb2e013ea",[]," businesses.",[],[295],{"submenuListItems":296,"submenuListTitle":318},[297,303,308,313],{"_key":298,"_type":43,"newWindow":45,"otherLocales":45,"reference":299,"title":302},"fc776181be24",{"_type":300,"locale":38,"slug":301},"businessSolutions.solution","\u002Fsurplus-food-marketplace","Marketplace surprise bags",{"_key":304,"_type":43,"newWindow":45,"otherLocales":45,"reference":305,"title":307},"659448c75521",{"_type":300,"locale":38,"slug":306},"\u002Fplatform","Too Good To Go Platform",{"_key":309,"_type":43,"newWindow":45,"otherLocales":45,"reference":310,"title":312},"e6f8af094b56",{"_type":300,"locale":38,"slug":311},"\u002Flook-smell-taste","Date Labeling initiative",{"_key":314,"_type":43,"newWindow":45,"otherLocales":45,"reference":315,"title":317},"edc94aab8074",{"_type":83,"locale":38,"slug":316},"\u002Ffood-waste-solution","Find out more","Business solutions","Business",{"blog":321,"careers":322,"pressReleases":323},"blog","careers","press",{"Facebook":126,"FacebookAPIKey":325,"Instagram":122,"LinkedIn":118,"TikTok":8,"Twitter":326,"YouTube":8},"3506013279621180","https:\u002F\u002Ftwitter.com\u002Ftoogoodtogo",{"page":328},{"_createdAt":329,"_translations":330,"_type":331,"_updatedAt":332,"author":8,"categories":333,"content":337,"contentChoice":2948,"defaultPageBlocks":2949,"hideHeader":8,"image":3053,"language":38,"migrated":8,"pageContent":8,"pageVisibility":3058,"parent":3059,"pretitle":3061,"publishedAt":3062,"seoSocial":3063,"slug":3066,"title":3065,"updatedAt":8},"2025-12-17T14:41:34Z",[],"aboutFoodWaste.blog","2025-12-17T14:44:44Z",[334],{"_key":335,"_ref":336,"_type":13},"50ef40c76000","imported-cat-205",[338,346,354,362,370,379,387,396,404,412,422,430,438,446,454,462,470,478,486,494,502,510,519,527,535,543,551,559,571,579,587,594,602,610,618,626,634,642,650,657,666,674,682,690,698,706,713,721,729,737,745,753,761,769,777,789,797,805,812,820,828,836,844,852,860,867,875,883,891,899,907,915,923,930,938,946,954,962,970,978,986,997,1005,1013,1021,1029,1036,1044,1052,1060,1068,1076,1084,1092,1100,1108,1116,1124,1132,1140,1148,1156,1164,1172,1180,1188,1196,1203,1210,1218,1226,1234,1241,1249,1257,1265,1273,1281,1292,1300,1308,1315,1323,1331,1339,1347,1355,1363,1371,1379,1386,1394,1402,1410,1418,1426,1433,1441,1449,1457,1465,1473,1484,1492,1500,1507,1515,1523,1531,1538,1546,1554,1562,1569,1577,1584,1591,1598,1605,1613,1621,1629,1637,1645,1653,1661,1672,1680,1688,1696,1704,1711,1719,1726,1733,1741,1749,1756,1764,1772,1779,1786,1794,1802,1810,1818,1826,1834,1845,1853,1861,1868,1876,1884,1892,1899,1906,1914,1921,1929,1936,1944,1951,1958,1965,1973,1981,1989,1997,2005,2013,2024,2032,2040,2047,2055,2063,2071,2079,2087,2095,2102,2110,2117,2125,2133,2141,2149,2157,2165,2173,2184,2192,2200,2207,2215,2223,2231,2238,2246,2254,2262,2270,2278,2286,2294,2301,2309,2317,2324,2331,2339,2347,2355,2363,2371,2379,2390,2398,2406,2414,2422,2429,2437,2445,2453,2461,2468,2476,2484,2492,2500,2508,2516,2524,2532,2540,2547,2555,2562,2570,2578,2586,2594,2602,2610,2618,2629,2637,2645,2652,2660,2668,2676,2684,2692,2699,2707,2715,2723,2731,2739,2747,2755,2763,2771,2782,2790,2798,2806,2814,2822,2830,2837,2845,2853,2861,2869,2877,2885,2893,2901,2909,2917,2925,2933,2941],{"_key":339,"_type":253,"children":340,"markDefs":345,"style":262},"4db55ebf7b32",[341],{"_key":342,"_type":257,"marks":343,"text":344},"511e1650da3c",[259],"12 Holiday Recipes Worth Gathering Around",[],{"_key":347,"_type":253,"children":348,"markDefs":353,"style":262},"ff63cc8f6913",[349],{"_key":350,"_type":257,"marks":351,"text":352},"f7700ee731b9",[],"Celebrations can take many forms. For some, it’s a packed house and a long table. For others, it’s a quiet meal with just a few loved ones. No matter what your holiday looks like, food often brings people together. It sets the mood, fills the space, and becomes part of the memory.",[],{"_key":355,"_type":253,"children":356,"markDefs":361,"style":262},"79e1908062d5",[357],{"_key":358,"_type":257,"marks":359,"text":360},"a6ee62f20482",[],"This guide offers 12 recipes that are made for gathering. They are flavorful, flexible, and easy to scale up or down depending on who is coming to the table. From centerpiece mains to seasonal sides and simple desserts, these dishes are built to impress without overcomplicating your day.",[],{"_key":363,"_type":253,"children":364,"markDefs":369,"style":262},"8fd5caed70a1",[365],{"_key":366,"_type":257,"marks":367,"text":368},"a2b61e8a16e6",[],"Along the way, you’ll find small suggestions for saving food, prepping smart, and using what you already have. Planning with care and cooking with purpose doesn’t mean more work; it just means more room for what matters.",[],{"_key":371,"_type":253,"children":372,"markDefs":377,"style":378},"9206af364c34",[373],{"_key":374,"_type":257,"marks":375,"text":376},"9af29f6350ce",[],"Main Dishes to Anchor Your Holiday Table",[],"h2",{"_key":380,"_type":253,"children":381,"markDefs":386,"style":262},"46d5402aab8b",[382],{"_key":383,"_type":257,"marks":384,"text":385},"cdee3d18548c",[],"Your centerpiece dish sets the tone. These mains are memorable, easy to scale, and made to impress whether you're hosting two or twelve.",[],{"_key":388,"_type":253,"children":389,"markDefs":394,"style":395},"0b364731cdaf",[390],{"_key":391,"_type":257,"marks":392,"text":393},"e8f173be3562",[],"Sheet Pan Chicken & Winter Vegetables",[],"h3",{"_key":397,"_type":253,"children":398,"markDefs":403,"style":262},"6f73a4b72446",[399],{"_key":400,"_type":257,"marks":401,"text":402},"a62a5f7d2228",[],"This dish is cozy, colorful, and all-in-one. It roasts up golden and fragrant, filling your kitchen with warmth. With crispy-skinned chicken and caramelized root veggies, it’s perfect for any winter table and keeps your prep and cleanup minimal.",[],{"_key":405,"_type":253,"children":406,"markDefs":411,"style":262},"57ebe9d1331b",[407],{"_key":408,"_type":257,"marks":409,"text":410},"a18380afa0fb",[259],"Ingredients:",[],{"_key":413,"_type":253,"children":414,"level":419,"listItem":420,"markDefs":421,"style":262},"305758d9283a",[415],{"_key":416,"_type":257,"marks":417,"text":418},"ba624f3eada5",[],"6-8 bone-in, skin-on chicken thighs",1,"bullet",[],{"_key":423,"_type":253,"children":424,"level":419,"listItem":420,"markDefs":429,"style":262},"4d9de60ac1f6",[425],{"_key":426,"_type":257,"marks":427,"text":428},"4e3b9c576e02",[],"3 large carrots, peeled and cut into 2-inch pieces",[],{"_key":431,"_type":253,"children":432,"level":419,"listItem":420,"markDefs":437,"style":262},"3c3bef046d99",[433],{"_key":434,"_type":257,"marks":435,"text":436},"58cee21c4c22",[],"2 parsnips, peeled and cut into 2-inch pieces",[],{"_key":439,"_type":253,"children":440,"level":419,"listItem":420,"markDefs":445,"style":262},"fc273f29aa8e",[441],{"_key":442,"_type":257,"marks":443,"text":444},"8023fe28a190",[],"1 pound Brussels sprouts, halved",[],{"_key":447,"_type":253,"children":448,"level":419,"listItem":420,"markDefs":453,"style":262},"acd004d02d60",[449],{"_key":450,"_type":257,"marks":451,"text":452},"7ef6347eb00c",[],"1 large red onion, cut into wedges",[],{"_key":455,"_type":253,"children":456,"level":419,"listItem":420,"markDefs":461,"style":262},"e4afdf9cf315",[457],{"_key":458,"_type":257,"marks":459,"text":460},"b22742bc814d",[],"6 cloves garlic, smashed",[],{"_key":463,"_type":253,"children":464,"level":419,"listItem":420,"markDefs":469,"style":262},"cdf534757c63",[465],{"_key":466,"_type":257,"marks":467,"text":468},"d0e4fc835276",[],"4 tablespoons olive oil",[],{"_key":471,"_type":253,"children":472,"level":419,"listItem":420,"markDefs":477,"style":262},"89e5798d0cab",[473],{"_key":474,"_type":257,"marks":475,"text":476},"2e8a6c245e96",[],"2 tablespoons fresh rosemary, chopped",[],{"_key":479,"_type":253,"children":480,"level":419,"listItem":420,"markDefs":485,"style":262},"357fcc089da9",[481],{"_key":482,"_type":257,"marks":483,"text":484},"fa9e24b2cbc4",[],"2 tablespoons fresh thyme leaves",[],{"_key":487,"_type":253,"children":488,"level":419,"listItem":420,"markDefs":493,"style":262},"37e3771e32f0",[489],{"_key":490,"_type":257,"marks":491,"text":492},"e9141335ec39",[],"1 lemon, cut into wedges",[],{"_key":495,"_type":253,"children":496,"level":419,"listItem":420,"markDefs":501,"style":262},"acb7a20c98fa",[497],{"_key":498,"_type":257,"marks":499,"text":500},"027b93bc57ff",[],"Salt and pepper to taste",[],{"_key":503,"_type":253,"children":504,"markDefs":509,"style":262},"23895328ad8c",[505],{"_key":506,"_type":257,"marks":507,"text":508},"aeee17aef382",[259],"Instructions:",[],{"_key":511,"_type":253,"children":512,"level":419,"listItem":517,"markDefs":518,"style":262},"27671881d255",[513],{"_key":514,"_type":257,"marks":515,"text":516},"7280ad255d5d",[],"Preheat oven to 425°F.","number",[],{"_key":520,"_type":253,"children":521,"level":419,"listItem":517,"markDefs":526,"style":262},"36e82c7a87c9",[522],{"_key":523,"_type":257,"marks":524,"text":525},"5a961c1c37f6",[],"On a large rimmed baking sheet (or two if needed to avoid overcrowding), arrange vegetables in a single layer. Drizzle with 2 tablespoons olive oil, season with salt, pepper, and half the herbs. Toss to coat.",[],{"_key":528,"_type":253,"children":529,"level":419,"listItem":517,"markDefs":534,"style":262},"79efd5b47ec4",[530],{"_key":531,"_type":257,"marks":532,"text":533},"ed16d058046e",[],"Pat chicken thighs dry and season generously with salt, pepper, and remaining herbs. Rub with remaining olive oil.",[],{"_key":536,"_type":253,"children":537,"level":419,"listItem":517,"markDefs":542,"style":262},"eca3afa4e9bb",[538],{"_key":539,"_type":257,"marks":540,"text":541},"e1559f7ff647",[],"Nestle chicken thighs among the vegetables, skin side up. Tuck garlic cloves and lemon wedges around the pan.",[],{"_key":544,"_type":253,"children":545,"level":419,"listItem":517,"markDefs":550,"style":262},"65bc7033a0c9",[546],{"_key":547,"_type":257,"marks":548,"text":549},"620cb7ee36dc",[],"Roast for 35-40 minutes, until chicken skin is crispy and golden, internal temperature reaches 165°F, and vegetables are tender and caramelized.",[],{"_key":552,"_type":253,"children":553,"level":419,"listItem":517,"markDefs":558,"style":262},"7ac7196b8f61",[554],{"_key":555,"_type":257,"marks":556,"text":557},"a9051411bc67",[],"Let rest 5 minutes. Squeeze roasted lemon over everything before serving.",[],{"_key":560,"_type":253,"children":561,"markDefs":570,"style":262},"cc175388912c",[562,566],{"_key":563,"_type":257,"marks":564,"text":565},"b210e669db5a",[259],"Too Good To Go Tip: ",{"_key":567,"_type":257,"marks":568,"text":569},"90e9f06ac35f",[],"This recipe naturally prevents waste since everything cooks together. Scale by adjusting the number of chicken thighs. Any leftover chicken can be shredded for sandwiches, burrito bowls, or used as a substitute for protein in our leftover turkey recipes.",[],{"_key":572,"_type":253,"children":573,"markDefs":578,"style":395},"e7609e40cedc",[574],{"_key":575,"_type":257,"marks":576,"text":577},"a4327784d8bc",[],"Herb-Crusted Salmon with Citrus Glaze",[],{"_key":580,"_type":253,"children":581,"markDefs":586,"style":262},"77e3f758c4d0",[582],{"_key":583,"_type":257,"marks":584,"text":585},"3893f407c55c",[],"Bright, delicious, and beautifully balanced, this salmon makes a festive main without a ton of effort. The herb crust adds crunch and color, while the orange-pomegranate glaze brings a sweet and tangy finish. It’s a lighter option for those looking to skip red meat and a stunning addition to any holiday table.",[],{"_key":588,"_type":253,"children":589,"markDefs":593,"style":262},"6620f540203a",[590],{"_key":591,"_type":257,"marks":592,"text":410},"c507b7d4ae3d",[259],[],{"_key":595,"_type":253,"children":596,"level":419,"listItem":420,"markDefs":601,"style":262},"ab9e3337bf52",[597],{"_key":598,"_type":257,"marks":599,"text":600},"a46617df85c6",[],"4-6 salmon fillets (6 oz each)",[],{"_key":603,"_type":253,"children":604,"level":419,"listItem":420,"markDefs":609,"style":262},"b70ee1d1b19a",[605],{"_key":606,"_type":257,"marks":607,"text":608},"9699a5cdcdcb",[],"3\u002F4 cup panko breadcrumbs",[],{"_key":611,"_type":253,"children":612,"level":419,"listItem":420,"markDefs":617,"style":262},"ce7f4a0b945e",[613],{"_key":614,"_type":257,"marks":615,"text":616},"75ab206ee570",[],"1\u002F4 cup fresh parsley, finely chopped",[],{"_key":619,"_type":253,"children":620,"level":419,"listItem":420,"markDefs":625,"style":262},"d5b53f33b928",[621],{"_key":622,"_type":257,"marks":623,"text":624},"6c7773d666bc",[],"2 tablespoons fresh dill, finely chopped",[],{"_key":627,"_type":253,"children":628,"level":419,"listItem":420,"markDefs":633,"style":262},"7049938a88a6",[629],{"_key":630,"_type":257,"marks":631,"text":632},"222c0918026f",[],"3 cloves garlic, minced",[],{"_key":635,"_type":253,"children":636,"level":419,"listItem":420,"markDefs":641,"style":262},"d41a45de07a0",[637],{"_key":638,"_type":257,"marks":639,"text":640},"597d7af3bc6b",[],"Zest of 1 lemon",[],{"_key":643,"_type":253,"children":644,"level":419,"listItem":420,"markDefs":649,"style":262},"eea22579733f",[645],{"_key":646,"_type":257,"marks":647,"text":648},"c1d445440c68",[],"3 tablespoons olive oil",[],{"_key":651,"_type":253,"children":652,"level":419,"listItem":420,"markDefs":656,"style":262},"cfc8c4368359",[653],{"_key":654,"_type":257,"marks":655,"text":500},"0cec38caf666",[],[],{"_key":658,"_type":253,"children":659,"markDefs":665,"style":262},"75760d406bcf",[660],{"_key":661,"_type":257,"marks":662,"text":664},"4e59bd0c0894",[663],"em","For the glaze:",[],{"_key":667,"_type":253,"children":668,"level":419,"listItem":420,"markDefs":673,"style":262},"3c7abd978322",[669],{"_key":670,"_type":257,"marks":671,"text":672},"cff033a5fb8f",[],"1\u002F2 cup fresh orange juice",[],{"_key":675,"_type":253,"children":676,"level":419,"listItem":420,"markDefs":681,"style":262},"1e449a235b5d",[677],{"_key":678,"_type":257,"marks":679,"text":680},"5418657c8823",[],"2 tablespoons honey",[],{"_key":683,"_type":253,"children":684,"level":419,"listItem":420,"markDefs":689,"style":262},"760227ad403b",[685],{"_key":686,"_type":257,"marks":687,"text":688},"de5c72b7f394",[],"1 tablespoon Dijon mustard",[],{"_key":691,"_type":253,"children":692,"level":419,"listItem":420,"markDefs":697,"style":262},"2cd9b1596273",[693],{"_key":694,"_type":257,"marks":695,"text":696},"c3ab1e95187a",[],"1\u002F4 cup pomegranate seeds",[],{"_key":699,"_type":253,"children":700,"level":419,"listItem":420,"markDefs":705,"style":262},"c7fc47dbff98",[701],{"_key":702,"_type":257,"marks":703,"text":704},"2457f5ec0d29",[],"1 teaspoon cornstarch mixed with 1 tablespoon water",[],{"_key":707,"_type":253,"children":708,"markDefs":712,"style":262},"ea888242c395",[709],{"_key":710,"_type":257,"marks":711,"text":508},"10390d7ea1e2",[259],[],{"_key":714,"_type":253,"children":715,"level":419,"listItem":517,"markDefs":720,"style":262},"f1e8206c7a4b",[716],{"_key":717,"_type":257,"marks":718,"text":719},"0b9253b07707",[],"Preheat oven to 400°F. Line a baking sheet with parchment paper.",[],{"_key":722,"_type":253,"children":723,"level":419,"listItem":517,"markDefs":728,"style":262},"99a54b0c8459",[724],{"_key":725,"_type":257,"marks":726,"text":727},"3c9f7dff2b0a",[],"In a small bowl, combine panko, parsley, dill, garlic, lemon zest, olive oil, salt, and pepper. Mix until breadcrumbs are evenly coated.",[],{"_key":730,"_type":253,"children":731,"level":419,"listItem":517,"markDefs":736,"style":262},"ee251bd551e9",[732],{"_key":733,"_type":257,"marks":734,"text":735},"63dbcdc1c488",[],"Pat salmon fillets dry and place on prepared baking sheet. Season with salt and pepper.",[],{"_key":738,"_type":253,"children":739,"level":419,"listItem":517,"markDefs":744,"style":262},"56f064ac9b2c",[740],{"_key":741,"_type":257,"marks":742,"text":743},"22c4803aed6b",[],"Press herb mixture firmly onto top of each fillet, creating an even crust.",[],{"_key":746,"_type":253,"children":747,"level":419,"listItem":517,"markDefs":752,"style":262},"1623b8cb8e20",[748],{"_key":749,"_type":257,"marks":750,"text":751},"2e728af8c0c1",[],"Bake for 12-15 minutes, until salmon flakes easily with a fork and crust is golden.",[],{"_key":754,"_type":253,"children":755,"level":419,"listItem":517,"markDefs":760,"style":262},"c089aa6bd2b9",[756],{"_key":757,"_type":257,"marks":758,"text":759},"d35fb68bf08a",[],"While salmon bakes, prepare glaze: In a small saucepan, combine orange juice, honey, and Dijon mustard. Bring to a simmer over medium heat.",[],{"_key":762,"_type":253,"children":763,"level":419,"listItem":517,"markDefs":768,"style":262},"2c24968eef6d",[764],{"_key":765,"_type":257,"marks":766,"text":767},"a21b61263f57",[],"Stir in cornstarch mixture and cook for 1-2 minutes until slightly thickened. Remove from heat and stir in pomegranate seeds.",[],{"_key":770,"_type":253,"children":771,"level":419,"listItem":517,"markDefs":776,"style":262},"3e9ace8033a2",[772],{"_key":773,"_type":257,"marks":774,"text":775},"0f405decd57a",[],"Drizzle glaze over baked salmon before serving.",[],{"_key":778,"_type":253,"children":779,"markDefs":788,"style":262},"e9858560dbb4",[780,784],{"_key":781,"_type":257,"marks":782,"text":783},"66e2713e7a53",[259],"Too Good To Go Tip:",{"_key":785,"_type":257,"marks":786,"text":787},"f93c3581b083",[]," Order exactly the number of fillets you need. If you overcount, leftover salmon can be flaked and used in salads, pasta, or breakfast scrambles the next day.",[],{"_key":790,"_type":253,"children":791,"markDefs":796,"style":395},"9c9b7ecbf57f",[792],{"_key":793,"_type":257,"marks":794,"text":795},"cce9088e40df",[],"Vegetarian Stuffed Squash Boats",[],{"_key":798,"_type":253,"children":799,"markDefs":804,"style":262},"6bb0d932716a",[800],{"_key":801,"_type":257,"marks":802,"text":803},"3b9aa7b42f9f",[],"These squash boats are a celebration in themselves: vibrant, hearty, and completely satisfying. Packed with wild rice, kale, mushrooms, cheese, and seasonal spices, they hit all the right notes. Plus, they look beautiful on the table and work for guests who don’t eat meat.",[],{"_key":806,"_type":253,"children":807,"markDefs":811,"style":262},"fa363e0a7e80",[808],{"_key":809,"_type":257,"marks":810,"text":410},"2840e58998eb",[259],[],{"_key":813,"_type":253,"children":814,"level":419,"listItem":420,"markDefs":819,"style":262},"10f5f6e0dff7",[815],{"_key":816,"_type":257,"marks":817,"text":818},"0962b274898b",[],"3 medium butternut or acorn squash, halved lengthwise and seeds removed",[],{"_key":821,"_type":253,"children":822,"level":419,"listItem":420,"markDefs":827,"style":262},"a4da2bb6a67e",[823],{"_key":824,"_type":257,"marks":825,"text":826},"c018a4b968e9",[],"2 tablespoons olive oil, divided",[],{"_key":829,"_type":253,"children":830,"level":419,"listItem":420,"markDefs":835,"style":262},"89b12b3f5bf7",[831],{"_key":832,"_type":257,"marks":833,"text":834},"1cd0431addeb",[],"Salt and pepper",[],{"_key":837,"_type":253,"children":838,"level":419,"listItem":420,"markDefs":843,"style":262},"d6705c147e82",[839],{"_key":840,"_type":257,"marks":841,"text":842},"f2ea888aa06b",[],"1 1\u002F2 cups cooked wild rice (or rice blend)",[],{"_key":845,"_type":253,"children":846,"level":419,"listItem":420,"markDefs":851,"style":262},"7dcd09e92e3f",[847],{"_key":848,"_type":257,"marks":849,"text":850},"4a8ff96b9344",[],"8 oz mushrooms (cremini or shiitake), diced",[],{"_key":853,"_type":253,"children":854,"level":419,"listItem":420,"markDefs":859,"style":262},"eb40ce1b0229",[855],{"_key":856,"_type":257,"marks":857,"text":858},"91e293deb82c",[],"1 small onion, diced",[],{"_key":861,"_type":253,"children":862,"level":419,"listItem":420,"markDefs":866,"style":262},"e029106e2b54",[863],{"_key":864,"_type":257,"marks":865,"text":632},"6284a6a1b53b",[],[],{"_key":868,"_type":253,"children":869,"level":419,"listItem":420,"markDefs":874,"style":262},"d9e21b4d105e",[870],{"_key":871,"_type":257,"marks":872,"text":873},"5ab17eead10d",[],"2 cups kale, stems removed and chopped",[],{"_key":876,"_type":253,"children":877,"level":419,"listItem":420,"markDefs":882,"style":262},"0bbbb7730bb5",[878],{"_key":879,"_type":257,"marks":880,"text":881},"29084da3dab6",[],"1\u002F3 cup dried cranberries",[],{"_key":884,"_type":253,"children":885,"level":419,"listItem":420,"markDefs":890,"style":262},"eb9233cd2018",[886],{"_key":887,"_type":257,"marks":888,"text":889},"34b459800da2",[],"1\u002F2 cup walnuts, toasted and roughly chopped",[],{"_key":892,"_type":253,"children":893,"level":419,"listItem":420,"markDefs":898,"style":262},"57d09568b363",[894],{"_key":895,"_type":257,"marks":896,"text":897},"39a663b43033",[],"1 cup gruyere cheese, grated",[],{"_key":900,"_type":253,"children":901,"level":419,"listItem":420,"markDefs":906,"style":262},"e9e720bacf11",[902],{"_key":903,"_type":257,"marks":904,"text":905},"a9fddc077bc6",[],"1 teaspoon dried sage",[],{"_key":908,"_type":253,"children":909,"level":419,"listItem":420,"markDefs":914,"style":262},"544688a0fd58",[910],{"_key":911,"_type":257,"marks":912,"text":913},"575835df3d18",[],"1\u002F2 teaspoon cinnamon",[],{"_key":916,"_type":253,"children":917,"level":419,"listItem":420,"markDefs":922,"style":262},"3964dda9011e",[918],{"_key":919,"_type":257,"marks":920,"text":921},"75cebdbdcd94",[],"Fresh thyme for garnish",[],{"_key":924,"_type":253,"children":925,"markDefs":929,"style":262},"f3bd261d6b2c",[926],{"_key":927,"_type":257,"marks":928,"text":508},"380cfaf11715",[259],[],{"_key":931,"_type":253,"children":932,"level":419,"listItem":517,"markDefs":937,"style":262},"08e85d233b71",[933],{"_key":934,"_type":257,"marks":935,"text":936},"80295ec7f2a5",[],"Preheat oven to 400°F. Brush cut sides of squash with 1 tablespoon olive oil and season with salt and pepper. Place cut-side down on a baking sheet lined with parchment paper.",[],{"_key":939,"_type":253,"children":940,"level":419,"listItem":517,"markDefs":945,"style":262},"43c6ebf300fc",[941],{"_key":942,"_type":257,"marks":943,"text":944},"15f3370d5a15",[],"Roast squash for 30-35 minutes until tender. Remove and let cool slightly. Scoop out some flesh from center, leaving a 1\u002F2-inch border. Chop scooped flesh and set aside.",[],{"_key":947,"_type":253,"children":948,"level":419,"listItem":517,"markDefs":953,"style":262},"1ff2ff72bf95",[949],{"_key":950,"_type":257,"marks":951,"text":952},"b503c5ba8e82",[],"While squash roasts, heat remaining olive oil in a large skillet over medium heat. Add mushrooms and cook 5-6 minutes until golden. Add onion and cook 3 minutes. Add garlic and kale, cooking until kale wilts, about 2 minutes.",[],{"_key":955,"_type":253,"children":956,"level":419,"listItem":517,"markDefs":961,"style":262},"0912c88bc626",[957],{"_key":958,"_type":257,"marks":959,"text":960},"3a98d99a00ce",[],"In a large bowl, combine cooked wild rice, mushroom mixture, chopped squash flesh, dried cranberries, walnuts, half the gruyere, sage, and cinnamon. Season with salt and pepper.",[],{"_key":963,"_type":253,"children":964,"level":419,"listItem":517,"markDefs":969,"style":262},"3732cc516e84",[965],{"_key":966,"_type":257,"marks":967,"text":968},"da510d354d8f",[],"Flip squash halves cut-side up. Fill each with rice mixture, mounding slightly. Top with remaining gruyere.",[],{"_key":971,"_type":253,"children":972,"level":419,"listItem":517,"markDefs":977,"style":262},"8063169f8df4",[973],{"_key":974,"_type":257,"marks":975,"text":976},"21aeb39325bc",[],"Return to oven and bake 15-20 minutes until cheese is melted and golden.",[],{"_key":979,"_type":253,"children":980,"level":419,"listItem":517,"markDefs":985,"style":262},"f32dd558f242",[981],{"_key":982,"_type":257,"marks":983,"text":984},"cd1012eb79e4",[],"Garnish with fresh thyme before serving.",[],{"_key":987,"_type":253,"children":988,"markDefs":996,"style":262},"45935801c3fb",[989,992],{"_key":990,"_type":257,"marks":991,"text":565},"5cf38dd2b44e",[259],{"_key":993,"_type":257,"marks":994,"text":995},"b20d37d70c98",[],"Each squash half is one portion, making it easy to prepare exactly what you need. Scale recipe by number of squash halves. The filling can be made a day ahead.",[],{"_key":998,"_type":253,"children":999,"markDefs":1004,"style":378},"f788868cec36",[1000],{"_key":1001,"_type":257,"marks":1002,"text":1003},"afb11def9d7b",[],"Crowd-Pleasing Holiday Appetizers to Start Strong",[],{"_key":1006,"_type":253,"children":1007,"markDefs":1012,"style":262},"533537e15f23",[1008],{"_key":1009,"_type":257,"marks":1010,"text":1011},"d53e143ac4ac",[],"Set the tone with snacks that are bold, beautiful, and bite-sized. These appetizers are easy to prep ahead, simple to serve, and made to please a variety of palates.",[],{"_key":1014,"_type":253,"children":1015,"markDefs":1020,"style":395},"87c296118fe1",[1016],{"_key":1017,"_type":257,"marks":1018,"text":1019},"f986c5456f42",[],"Winter Crostini Bar",[],{"_key":1022,"_type":253,"children":1023,"markDefs":1028,"style":262},"f362ceb06831",[1024],{"_key":1025,"_type":257,"marks":1026,"text":1027},"f8041b4a0f18",[],"This build-your-own crostini bar brings flavor and flexibility to any holiday table. With three seasonal topping combos, including beet and walnut, smoked salmon, and ricotta with honey, there’s something for everyone. It’s a stress-free way to impress guests without cooking a full appetizer course.",[],{"_key":1030,"_type":253,"children":1031,"markDefs":1035,"style":262},"521edb92ef99",[1032],{"_key":1033,"_type":257,"marks":1034,"text":410},"08992a6fd1eb",[259],[],{"_key":1037,"_type":253,"children":1038,"markDefs":1043,"style":262},"b14718f33e6b",[1039],{"_key":1040,"_type":257,"marks":1041,"text":1042},"66ef14b5df51",[259],"Base:",[],{"_key":1045,"_type":253,"children":1046,"level":419,"listItem":420,"markDefs":1051,"style":262},"a343efe319b2",[1047],{"_key":1048,"_type":257,"marks":1049,"text":1050},"8809d243451b",[],"1 French baguette, sliced into 1\u002F2-inch rounds",[],{"_key":1053,"_type":253,"children":1054,"level":419,"listItem":420,"markDefs":1059,"style":262},"77aee3cd29a8",[1055],{"_key":1056,"_type":257,"marks":1057,"text":1058},"37271dc4c99a",[],"2 tablespoons olive oil",[],{"_key":1061,"_type":253,"children":1062,"level":419,"listItem":420,"markDefs":1067,"style":262},"a84d251bb4af",[1063],{"_key":1064,"_type":257,"marks":1065,"text":1066},"b207c960ec9c",[],"Salt",[],{"_key":1069,"_type":253,"children":1070,"markDefs":1075,"style":262},"2528972fe09a",[1071],{"_key":1072,"_type":257,"marks":1073,"text":1074},"a21e23b5b566",[259],"Topping 1 - Roasted Beet & Walnut:",[],{"_key":1077,"_type":253,"children":1078,"level":419,"listItem":420,"markDefs":1083,"style":262},"d25437b87561",[1079],{"_key":1080,"_type":257,"marks":1081,"text":1082},"af3ae8625212",[],"2 medium beets, roasted and diced",[],{"_key":1085,"_type":253,"children":1086,"level":419,"listItem":420,"markDefs":1091,"style":262},"13d73eb09204",[1087],{"_key":1088,"_type":257,"marks":1089,"text":1090},"c47f03aa9573",[],"4 oz goat cheese, softened",[],{"_key":1093,"_type":253,"children":1094,"level":419,"listItem":420,"markDefs":1099,"style":262},"16f375de5e51",[1095],{"_key":1096,"_type":257,"marks":1097,"text":1098},"e50a6b65e618",[],"2 tablespoons cream",[],{"_key":1101,"_type":253,"children":1102,"level":419,"listItem":420,"markDefs":1107,"style":262},"2881bf370840",[1103],{"_key":1104,"_type":257,"marks":1105,"text":1106},"9cfc52a13b14",[],"1\u002F4 cup walnuts, toasted and chopped",[],{"_key":1109,"_type":253,"children":1110,"level":419,"listItem":420,"markDefs":1115,"style":262},"b0eafc47215f",[1111],{"_key":1112,"_type":257,"marks":1113,"text":1114},"1cf8dc314257",[],"1 tablespoon honey",[],{"_key":1117,"_type":253,"children":1118,"level":419,"listItem":420,"markDefs":1123,"style":262},"7d07eb0fe3d7",[1119],{"_key":1120,"_type":257,"marks":1121,"text":1122},"9808a9d504b3",[],"Fresh thyme",[],{"_key":1125,"_type":253,"children":1126,"markDefs":1131,"style":262},"c07d53566463",[1127],{"_key":1128,"_type":257,"marks":1129,"text":1130},"0092c1cac588",[259],"Topping 2 - Smoked Salmon:",[],{"_key":1133,"_type":253,"children":1134,"level":419,"listItem":420,"markDefs":1139,"style":262},"89651b513ff8",[1135],{"_key":1136,"_type":257,"marks":1137,"text":1138},"8e420a975570",[],"6 oz smoked salmon",[],{"_key":1141,"_type":253,"children":1142,"level":419,"listItem":420,"markDefs":1147,"style":262},"be473ddcf3bc",[1143],{"_key":1144,"_type":257,"marks":1145,"text":1146},"f07cbb764172",[],"4 oz cream cheese, softened",[],{"_key":1149,"_type":253,"children":1150,"level":419,"listItem":420,"markDefs":1155,"style":262},"fea61ad55054",[1151],{"_key":1152,"_type":257,"marks":1153,"text":1154},"2ec9aafb8138",[],"2 tablespoons fresh dill, chopped",[],{"_key":1157,"_type":253,"children":1158,"level":419,"listItem":420,"markDefs":1163,"style":262},"d2ecf3dd6dc8",[1159],{"_key":1160,"_type":257,"marks":1161,"text":1162},"5762856fb9eb",[],"1 tablespoon lemon juice",[],{"_key":1165,"_type":253,"children":1166,"level":419,"listItem":420,"markDefs":1171,"style":262},"51f283a96b0d",[1167],{"_key":1168,"_type":257,"marks":1169,"text":1170},"6c1e717d496a",[],"1 tablespoon capers",[],{"_key":1173,"_type":253,"children":1174,"level":419,"listItem":420,"markDefs":1179,"style":262},"6f6e809aed0f",[1175],{"_key":1176,"_type":257,"marks":1177,"text":1178},"212e7a80ac8c",[],"Red onion, thinly sliced (optional)",[],{"_key":1181,"_type":253,"children":1182,"markDefs":1187,"style":262},"ec7110192934",[1183],{"_key":1184,"_type":257,"marks":1185,"text":1186},"b20f6dd9ff51",[259],"Topping 3 - Ricotta & Honey:",[],{"_key":1189,"_type":253,"children":1190,"level":419,"listItem":420,"markDefs":1195,"style":262},"174fd77ede4c",[1191],{"_key":1192,"_type":257,"marks":1193,"text":1194},"21aa554e971a",[],"1 cup whole milk ricotta",[],{"_key":1197,"_type":253,"children":1198,"level":419,"listItem":420,"markDefs":1202,"style":262},"f5378b1ae55e",[1199],{"_key":1200,"_type":257,"marks":1201,"text":680},"5689264bb7ca",[],[],{"_key":1204,"_type":253,"children":1205,"level":419,"listItem":420,"markDefs":1209,"style":262},"3b068967e50d",[1206],{"_key":1207,"_type":257,"marks":1208,"text":696},"7315e4fdb59b",[],[],{"_key":1211,"_type":253,"children":1212,"level":419,"listItem":420,"markDefs":1217,"style":262},"191831c80802",[1213],{"_key":1214,"_type":257,"marks":1215,"text":1216},"e5cb7ca1e530",[],"2 teaspoons fresh thyme leaves",[],{"_key":1219,"_type":253,"children":1220,"level":419,"listItem":420,"markDefs":1225,"style":262},"2c5ee633f98c",[1221],{"_key":1222,"_type":257,"marks":1223,"text":1224},"b50ee66eeb54",[],"Flaky sea salt",[],{"_key":1227,"_type":253,"children":1228,"level":419,"listItem":420,"markDefs":1233,"style":262},"f68004e2ff53",[1229],{"_key":1230,"_type":257,"marks":1231,"text":1232},"c75536b977f0",[],"Black pepper",[],{"_key":1235,"_type":253,"children":1236,"markDefs":1240,"style":262},"226b452ff9a7",[1237],{"_key":1238,"_type":257,"marks":1239,"text":508},"239088edc73e",[259],[],{"_key":1242,"_type":253,"children":1243,"level":419,"listItem":517,"markDefs":1248,"style":262},"9251498bb091",[1244],{"_key":1245,"_type":257,"marks":1246,"text":1247},"175c4a54369d",[],"Preheat oven to 375°F. Arrange baguette slices on baking sheets, brush with olive oil, and sprinkle with salt. Toast 8-10 minutes until golden and crispy. Let cool.",[],{"_key":1250,"_type":253,"children":1251,"level":419,"listItem":517,"markDefs":1256,"style":262},"7405e4f22f19",[1252],{"_key":1253,"_type":257,"marks":1254,"text":1255},"72690620c92d",[],"For beet topping: Whip goat cheese with cream until smooth. Spread on crostini, top with diced beets, walnuts, drizzle of honey, and thyme.",[],{"_key":1258,"_type":253,"children":1259,"level":419,"listItem":517,"markDefs":1264,"style":262},"c7f821626255",[1260],{"_key":1261,"_type":257,"marks":1262,"text":1263},"2ac86428d760",[],"For salmon topping: Mix cream cheese with dill and lemon juice. Spread on crostini, top with pieces of smoked salmon, capers, and red onion if using.",[],{"_key":1266,"_type":253,"children":1267,"level":419,"listItem":517,"markDefs":1272,"style":262},"b8a652202ea3",[1268],{"_key":1269,"_type":257,"marks":1270,"text":1271},"7f11e0452780",[],"For ricotta topping: Spread ricotta on crostini, drizzle with honey, top with pomegranate seeds, thyme, salt, and cracked pepper.",[],{"_key":1274,"_type":253,"children":1275,"level":419,"listItem":517,"markDefs":1280,"style":262},"ceda2512fcff",[1276],{"_key":1277,"_type":257,"marks":1278,"text":1279},"10292d236142",[],"Arrange all three varieties on a platter for guests to choose.",[],{"_key":1282,"_type":253,"children":1283,"markDefs":1291,"style":262},"88597a114a0d",[1284,1287],{"_key":1285,"_type":257,"marks":1286,"text":565},"e2e589fd46f9",[259],{"_key":1288,"_type":257,"marks":1289,"text":1290},"77654223eb0b",[],"Guests take only what they want. Leftover toppings can be used as sandwich spreads or stirred into pasta. Toast only the number of crostini you need.",[],{"_key":1293,"_type":253,"children":1294,"markDefs":1299,"style":395},"3e23629aa060",[1295],{"_key":1296,"_type":257,"marks":1297,"text":1298},"6da98bd91aca",[],"Roasted Red Pepper & White Bean Dip",[],{"_key":1301,"_type":253,"children":1302,"markDefs":1307,"style":262},"f85a51478c6c",[1303],{"_key":1304,"_type":257,"marks":1305,"text":1306},"5ace483fa3d2",[],"Smooth, smoky, and satisfying, this plant-based dip hits all the right notes. It's made from pantry staples, full of protein and flavor, and pairs beautifully with raw veggies or crackers. Serve it warm or cold! It holds up either way.",[],{"_key":1309,"_type":253,"children":1310,"markDefs":1314,"style":262},"6aacd65cfacf",[1311],{"_key":1312,"_type":257,"marks":1313,"text":410},"4226b129204e",[259],[],{"_key":1316,"_type":253,"children":1317,"level":419,"listItem":420,"markDefs":1322,"style":262},"397a1e819bd1",[1318],{"_key":1319,"_type":257,"marks":1320,"text":1321},"26ed41b3002f",[],"2 large red bell peppers (or 1 cup jarred roasted peppers)",[],{"_key":1324,"_type":253,"children":1325,"level":419,"listItem":420,"markDefs":1330,"style":262},"a7ff914f8bdd",[1326],{"_key":1327,"_type":257,"marks":1328,"text":1329},"dad4e1c4edf3",[],"1 can (15 oz) cannellini beans, drained and rinsed",[],{"_key":1332,"_type":253,"children":1333,"level":419,"listItem":420,"markDefs":1338,"style":262},"8fabee60447a",[1334],{"_key":1335,"_type":257,"marks":1336,"text":1337},"0b332e6ffa30",[],"3 cloves garlic, roasted or raw",[],{"_key":1340,"_type":253,"children":1341,"level":419,"listItem":420,"markDefs":1346,"style":262},"145cb5caa556",[1342],{"_key":1343,"_type":257,"marks":1344,"text":1345},"1dfc4d9ca85a",[],"3 tablespoons tahini",[],{"_key":1348,"_type":253,"children":1349,"level":419,"listItem":420,"markDefs":1354,"style":262},"7610b0e922f0",[1350],{"_key":1351,"_type":257,"marks":1352,"text":1353},"4f478e3ef838",[],"3 tablespoons lemon juice",[],{"_key":1356,"_type":253,"children":1357,"level":419,"listItem":420,"markDefs":1362,"style":262},"c38c0bb76cab",[1358],{"_key":1359,"_type":257,"marks":1360,"text":1361},"e7a659704638",[],"2 tablespoons olive oil, plus more for drizzling",[],{"_key":1364,"_type":253,"children":1365,"level":419,"listItem":420,"markDefs":1370,"style":262},"51512b129f01",[1366],{"_key":1367,"_type":257,"marks":1368,"text":1369},"f72e60b2c775",[],"1\u002F2 teaspoon smoked paprika",[],{"_key":1372,"_type":253,"children":1373,"level":419,"listItem":420,"markDefs":1378,"style":262},"181fc185d182",[1374],{"_key":1375,"_type":257,"marks":1376,"text":1377},"667bb85b7616",[],"1\u002F4 teaspoon cumin",[],{"_key":1380,"_type":253,"children":1381,"level":419,"listItem":420,"markDefs":1385,"style":262},"b22dc3c6c2b9",[1382],{"_key":1383,"_type":257,"marks":1384,"text":500},"fb63f0743892",[],[],{"_key":1387,"_type":253,"children":1388,"level":419,"listItem":420,"markDefs":1393,"style":262},"11d4f1b4676f",[1389],{"_key":1390,"_type":257,"marks":1391,"text":1392},"039d4988e9ed",[],"Fresh parsley for garnish",[],{"_key":1395,"_type":253,"children":1396,"level":419,"listItem":420,"markDefs":1401,"style":262},"4775ba47e9c8",[1397],{"_key":1398,"_type":257,"marks":1399,"text":1400},"198d38bd044b",[],"Pine nuts, toasted (optional)",[],{"_key":1403,"_type":253,"children":1404,"markDefs":1409,"style":262},"544e0c1b9fbc",[1405],{"_key":1406,"_type":257,"marks":1407,"text":1408},"2597d786537b",[259],"For serving:",[],{"_key":1411,"_type":253,"children":1412,"level":419,"listItem":420,"markDefs":1417,"style":262},"e29f2f5f157f",[1413],{"_key":1414,"_type":257,"marks":1415,"text":1416},"d61420b0b311",[],"Assorted fresh vegetables (carrots, celery, bell peppers, cucumber)",[],{"_key":1419,"_type":253,"children":1420,"level":419,"listItem":420,"markDefs":1425,"style":262},"55d964f10f3a",[1421],{"_key":1422,"_type":257,"marks":1423,"text":1424},"5f8e79ea51e7",[],"Pita chips or crackers",[],{"_key":1427,"_type":253,"children":1428,"markDefs":1432,"style":262},"9e1a7601f513",[1429],{"_key":1430,"_type":257,"marks":1431,"text":508},"112954029f65",[259],[],{"_key":1434,"_type":253,"children":1435,"level":419,"listItem":517,"markDefs":1440,"style":262},"9b208322dc6b",[1436],{"_key":1437,"_type":257,"marks":1438,"text":1439},"13bad09d6154",[],"If roasting fresh peppers: Preheat oven to 450°F. Place whole peppers on a baking sheet and roast 25-30 minutes, turning occasionally, until skin is charred. Place in a bowl and cover with plastic wrap for 10 minutes. Peel off skin, remove seeds and stems.",[],{"_key":1442,"_type":253,"children":1443,"level":419,"listItem":517,"markDefs":1448,"style":262},"f7fbf8c696fc",[1444],{"_key":1445,"_type":257,"marks":1446,"text":1447},"dfacbd38b20d",[],"In a food processor, combine roasted peppers, beans, garlic, tahini, lemon juice, olive oil, paprika, and cumin. Blend until smooth and creamy. If too thick, add 1-2 tablespoons water.",[],{"_key":1450,"_type":253,"children":1451,"level":419,"listItem":517,"markDefs":1456,"style":262},"9500dff5b191",[1452],{"_key":1453,"_type":257,"marks":1454,"text":1455},"d6102e4b6e89",[],"Season with salt and pepper to taste. Transfer to a serving bowl.",[],{"_key":1458,"_type":253,"children":1459,"level":419,"listItem":517,"markDefs":1464,"style":262},"b9de6dfea09b",[1460],{"_key":1461,"_type":257,"marks":1462,"text":1463},"1b49fdb59cfd",[],"Drizzle with olive oil, garnish with parsley and pine nuts if using.",[],{"_key":1466,"_type":253,"children":1467,"level":419,"listItem":517,"markDefs":1472,"style":262},"058d47a311dd",[1468],{"_key":1469,"_type":257,"marks":1470,"text":1471},"02b82eda8577",[],"Serve with fresh vegetables and pita chips.",[],{"_key":1474,"_type":253,"children":1475,"markDefs":1483,"style":262},"752480f37827",[1476,1479],{"_key":1477,"_type":257,"marks":1478,"text":783},"e8c4ee1542ea",[259],{"_key":1480,"_type":257,"marks":1481,"text":1482},"a2b8b14527a9",[]," This dip keeps for 5-7 days in the fridge. You can also use leftovers as a sandwich spread or pasta sauce! The recipe easily halves if needed.",[],{"_key":1485,"_type":253,"children":1486,"markDefs":1491,"style":395},"ccc58590ad87",[1487],{"_key":1488,"_type":257,"marks":1489,"text":1490},"d825cb68283e",[],"Mushroom & Gruyere Puff Pastry Bites",[],{"_key":1493,"_type":253,"children":1494,"markDefs":1499,"style":262},"2d3e87fc5315",[1495],{"_key":1496,"_type":257,"marks":1497,"text":1498},"f0b001788264",[],"Crispy, golden bites with melty cheese and rich mushrooms tucked inside, these puff pastry squares disappear fast. They’re easy to prep ahead, bake quickly, and bring just the right touch of elegance to your spread.",[],{"_key":1501,"_type":253,"children":1502,"markDefs":1506,"style":262},"69745e8059ca",[1503],{"_key":1504,"_type":257,"marks":1505,"text":410},"9767e1d46425",[259],[],{"_key":1508,"_type":253,"children":1509,"level":419,"listItem":420,"markDefs":1514,"style":262},"d5cf6a80ba4f",[1510],{"_key":1511,"_type":257,"marks":1512,"text":1513},"ec5768061977",[],"1 sheet frozen puff pastry, thawed",[],{"_key":1516,"_type":253,"children":1517,"level":419,"listItem":420,"markDefs":1522,"style":262},"3ab3d6000c27",[1518],{"_key":1519,"_type":257,"marks":1520,"text":1521},"b4ee57c250e4",[],"12 oz mixed mushrooms (cremini, shiitake, or button), finely chopped",[],{"_key":1524,"_type":253,"children":1525,"level":419,"listItem":420,"markDefs":1530,"style":262},"3f566f5eb698",[1526],{"_key":1527,"_type":257,"marks":1528,"text":1529},"39696c34ea17",[],"2 shallots, minced",[],{"_key":1532,"_type":253,"children":1533,"level":419,"listItem":420,"markDefs":1537,"style":262},"76f015eebe0b",[1534],{"_key":1535,"_type":257,"marks":1536,"text":632},"5766afe9c79f",[],[],{"_key":1539,"_type":253,"children":1540,"level":419,"listItem":420,"markDefs":1545,"style":262},"46e7b3979351",[1541],{"_key":1542,"_type":257,"marks":1543,"text":1544},"a352605b49cf",[],"2 tablespoons butter",[],{"_key":1547,"_type":253,"children":1548,"level":419,"listItem":420,"markDefs":1553,"style":262},"d1d0e6dc2c31",[1549],{"_key":1550,"_type":257,"marks":1551,"text":1552},"ab480cc22d68",[],"2 tablespoons fresh thyme leaves, divided",[],{"_key":1555,"_type":253,"children":1556,"level":419,"listItem":420,"markDefs":1561,"style":262},"604cc802c98a",[1557],{"_key":1558,"_type":257,"marks":1559,"text":1560},"42f9ea859a98",[],"1\u002F4 cup white wine (or vegetable broth)",[],{"_key":1563,"_type":253,"children":1564,"level":419,"listItem":420,"markDefs":1568,"style":262},"7af1ff89098b",[1565],{"_key":1566,"_type":257,"marks":1567,"text":897},"cc6a05fcea0a",[],[],{"_key":1570,"_type":253,"children":1571,"level":419,"listItem":420,"markDefs":1576,"style":262},"f549f1d4f0db",[1572],{"_key":1573,"_type":257,"marks":1574,"text":1575},"8efaccd19b9d",[],"1 egg, beaten",[],{"_key":1578,"_type":253,"children":1579,"level":419,"listItem":420,"markDefs":1583,"style":262},"f2454bb18d0d",[1580],{"_key":1581,"_type":257,"marks":1582,"text":500},"c3f2dd26abe8",[],[],{"_key":1585,"_type":253,"children":1586,"level":419,"listItem":420,"markDefs":1590,"style":262},"8acb87c84908",[1587],{"_key":1588,"_type":257,"marks":1589,"text":1392},"4e0f4f01ad39",[],[],{"_key":1592,"_type":253,"children":1593,"markDefs":1597,"style":262},"dde57c57b874",[1594],{"_key":1595,"_type":257,"marks":1596,"text":508},"fd03d8a8beee",[259],[],{"_key":1599,"_type":253,"children":1600,"level":419,"listItem":517,"markDefs":1604,"style":262},"f0e0eda1dede",[1601],{"_key":1602,"_type":257,"marks":1603,"text":719},"a4bbacc56296",[],[],{"_key":1606,"_type":253,"children":1607,"level":419,"listItem":517,"markDefs":1612,"style":262},"966e130266e6",[1608],{"_key":1609,"_type":257,"marks":1610,"text":1611},"c168a9ab8959",[],"In a large skillet over medium-high heat, melt butter. Add mushrooms and cook 8-10 minutes until they release moisture and begin to brown.",[],{"_key":1614,"_type":253,"children":1615,"level":419,"listItem":517,"markDefs":1620,"style":262},"99ab367d48e8",[1616],{"_key":1617,"_type":257,"marks":1618,"text":1619},"a751e6738119",[],"Add shallots and garlic, cook 2 minutes. Add wine and half the thyme. Cook until liquid evaporates, about 3 minutes. Season with salt and pepper. Let cool slightly.",[],{"_key":1622,"_type":253,"children":1623,"level":419,"listItem":517,"markDefs":1628,"style":262},"1d8185a78c0e",[1624],{"_key":1625,"_type":257,"marks":1626,"text":1627},"d7f70e488c24",[],"Roll out puff pastry on a lightly floured surface. Cut into 24 squares (roughly 2x2 inches).",[],{"_key":1630,"_type":253,"children":1631,"level":419,"listItem":517,"markDefs":1636,"style":262},"4897cbac27c1",[1632],{"_key":1633,"_type":257,"marks":1634,"text":1635},"1496f729704d",[],"Place squares on prepared baking sheet. Brush edges with beaten egg.",[],{"_key":1638,"_type":253,"children":1639,"level":419,"listItem":517,"markDefs":1644,"style":262},"fff65caf530c",[1640],{"_key":1641,"_type":257,"marks":1642,"text":1643},"a7c620810208",[],"Spoon about 1 tablespoon mushroom mixture onto each square. Top with grated gruyere.",[],{"_key":1646,"_type":253,"children":1647,"level":419,"listItem":517,"markDefs":1652,"style":262},"1d4d6bb1b582",[1648],{"_key":1649,"_type":257,"marks":1650,"text":1651},"3fc57358061b",[],"Bake 15-18 minutes until pastry is puffed and golden.",[],{"_key":1654,"_type":253,"children":1655,"level":419,"listItem":517,"markDefs":1660,"style":262},"9253b483c8ac",[1656],{"_key":1657,"_type":257,"marks":1658,"text":1659},"d6cb4f47e910",[],"Garnish with remaining fresh thyme and parsley before serving.",[],{"_key":1662,"_type":253,"children":1663,"markDefs":1671,"style":262},"226db28a172c",[1664,1667],{"_key":1665,"_type":257,"marks":1666,"text":783},"53678adc9760",[259],{"_key":1668,"_type":257,"marks":1669,"text":1670},"4cdfc1248355",[]," Bake only what you need! Unbaked pastries can be frozen on a baking sheet, then transferred to a bag and baked from frozen when needed. Add 5 minutes to the baking time.",[],{"_key":1673,"_type":253,"children":1674,"markDefs":1679,"style":378},"73340fbba85d",[1675],{"_key":1676,"_type":257,"marks":1677,"text":1678},"b90f7c82e136",[],"Satisfying Holiday Sides That Steal the Show",[],{"_key":1681,"_type":253,"children":1682,"markDefs":1687,"style":262},"81e5c4b5d6fb",[1683],{"_key":1684,"_type":257,"marks":1685,"text":1686},"959762cb8224",[],"These side dishes are more than filler. They are full of flavor, colorful, and hearty enough to hold their own. Add a few to your table and give everyone something to talk about.",[],{"_key":1689,"_type":253,"children":1690,"markDefs":1695,"style":395},"21472c364558",[1691],{"_key":1692,"_type":257,"marks":1693,"text":1694},"dd1f0884c8ac",[],"Maple-Glazed Brussels Sprouts with Cranberries",[],{"_key":1697,"_type":253,"children":1698,"markDefs":1703,"style":262},"1ba42eb49d28",[1699],{"_key":1700,"_type":257,"marks":1701,"text":1702},"4e144cb499d9",[],"Crispy, caramelized sprouts meet sweet-tart cranberries and toasted pecans. This dish checks every texture and flavor box: sweet, savory, and crunchy! It’s a must-have for any holiday menu.",[],{"_key":1705,"_type":253,"children":1706,"markDefs":1710,"style":262},"e81a6bd93bc2",[1707],{"_key":1708,"_type":257,"marks":1709,"text":410},"2ab1871290b3",[259],[],{"_key":1712,"_type":253,"children":1713,"level":419,"listItem":420,"markDefs":1718,"style":262},"2b6731ea1af2",[1714],{"_key":1715,"_type":257,"marks":1716,"text":1717},"39e2c79626b3",[],"1 1\u002F2 pounds Brussels sprouts, trimmed and halved",[],{"_key":1720,"_type":253,"children":1721,"level":419,"listItem":420,"markDefs":1725,"style":262},"cf63107224e8",[1722],{"_key":1723,"_type":257,"marks":1724,"text":648},"811333a74092",[],[],{"_key":1727,"_type":253,"children":1728,"level":419,"listItem":420,"markDefs":1732,"style":262},"3f2ed28bf130",[1729],{"_key":1730,"_type":257,"marks":1731,"text":834},"a6d41413ae67",[],[],{"_key":1734,"_type":253,"children":1735,"level":419,"listItem":420,"markDefs":1740,"style":262},"5c1e24ce87e6",[1736],{"_key":1737,"_type":257,"marks":1738,"text":1739},"f90a98fce27b",[],"3 tablespoons pure maple syrup",[],{"_key":1742,"_type":253,"children":1743,"level":419,"listItem":420,"markDefs":1748,"style":262},"8f17ef41dfaa",[1744],{"_key":1745,"_type":257,"marks":1746,"text":1747},"f3fcfd1d9396",[],"2 tablespoons balsamic vinegar",[],{"_key":1750,"_type":253,"children":1751,"level":419,"listItem":420,"markDefs":1755,"style":262},"4a1ba6807e1a",[1752],{"_key":1753,"_type":257,"marks":1754,"text":881},"dd305e8b2f28",[],[],{"_key":1757,"_type":253,"children":1758,"level":419,"listItem":420,"markDefs":1763,"style":262},"2b8bc04c92a7",[1759],{"_key":1760,"_type":257,"marks":1761,"text":1762},"2ce562c3e40e",[],"1\u002F2 cup pecans, toasted and roughly chopped",[],{"_key":1765,"_type":253,"children":1766,"level":419,"listItem":420,"markDefs":1771,"style":262},"de3e18c49202",[1767],{"_key":1768,"_type":257,"marks":1769,"text":1770},"a5e5fbbe6592",[],"1 tablespoon butter",[],{"_key":1773,"_type":253,"children":1774,"markDefs":1778,"style":262},"acce63d4e74d",[1775],{"_key":1776,"_type":257,"marks":1777,"text":508},"99fab8a935e6",[259],[],{"_key":1780,"_type":253,"children":1781,"level":419,"listItem":517,"markDefs":1785,"style":262},"495f2a79ed8f",[1782],{"_key":1783,"_type":257,"marks":1784,"text":516},"2970883e12f2",[],[],{"_key":1787,"_type":253,"children":1788,"level":419,"listItem":517,"markDefs":1793,"style":262},"7b5c6a000878",[1789],{"_key":1790,"_type":257,"marks":1791,"text":1792},"afee72df867c",[],"Toss Brussels sprouts with olive oil, salt, and pepper. Spread in a single layer on a large baking sheet, cut side down.",[],{"_key":1795,"_type":253,"children":1796,"level":419,"listItem":517,"markDefs":1801,"style":262},"9d1612a5e72b",[1797],{"_key":1798,"_type":257,"marks":1799,"text":1800},"3ebec871d4fe",[],"Roast for 20-25 minutes, stirring halfway through, until deeply caramelized and crispy on edges.",[],{"_key":1803,"_type":253,"children":1804,"level":419,"listItem":517,"markDefs":1809,"style":262},"3f17b4d1731d",[1805],{"_key":1806,"_type":257,"marks":1807,"text":1808},"f22da8a2c960",[],"While sprouts roast, combine maple syrup, balsamic vinegar, and butter in a small saucepan. Heat over medium until butter melts and mixture is combined.",[],{"_key":1811,"_type":253,"children":1812,"level":419,"listItem":517,"markDefs":1817,"style":262},"7cf82bf4e633",[1813],{"_key":1814,"_type":257,"marks":1815,"text":1816},"0bf46357fa66",[],"Transfer roasted Brussels sprouts to a serving bowl. Drizzle with maple-balsamic glaze and toss to coat.",[],{"_key":1819,"_type":253,"children":1820,"level":419,"listItem":517,"markDefs":1825,"style":262},"59b240cc5f05",[1821],{"_key":1822,"_type":257,"marks":1823,"text":1824},"87d890283341",[],"Add dried cranberries and toasted pecans, toss gently.",[],{"_key":1827,"_type":253,"children":1828,"level":419,"listItem":517,"markDefs":1833,"style":262},"bcc70631f52a",[1829],{"_key":1830,"_type":257,"marks":1831,"text":1832},"31e0bc5ac71b",[],"Serve warm.",[],{"_key":1835,"_type":253,"children":1836,"markDefs":1844,"style":262},"ac1d85ba030a",[1837,1840],{"_key":1838,"_type":257,"marks":1839,"text":783},"ffb645222bf8",[259],{"_key":1841,"_type":257,"marks":1842,"text":1843},"934fb2776a59",[]," The recipe easily scales up or down; use about 1\u002F2 pound of Brussels sprouts per person. Any leftovers are excellent reheated or served cold in salads.",[],{"_key":1846,"_type":253,"children":1847,"markDefs":1852,"style":395},"7d5da577235a",[1848],{"_key":1849,"_type":257,"marks":1850,"text":1851},"01477545e9cb",[],"Herbed Root Vegetable Medley",[],{"_key":1854,"_type":253,"children":1855,"markDefs":1860,"style":262},"be96908f9931",[1856],{"_key":1857,"_type":257,"marks":1858,"text":1859},"3fcfac63198b",[],"This medley is the ultimate seasonal side. Roasted carrots, parsnips, sweet potatoes, and red onions tossed in fresh herbs bring a burst of color and earthy flavor. It’s a cozy, no-fuss recipe that complements any main.",[],{"_key":1862,"_type":253,"children":1863,"markDefs":1867,"style":262},"a3759290bb32",[1864],{"_key":1865,"_type":257,"marks":1866,"text":410},"61fbca0b8411",[259],[],{"_key":1869,"_type":253,"children":1870,"level":419,"listItem":420,"markDefs":1875,"style":262},"fdeae383ba14",[1871],{"_key":1872,"_type":257,"marks":1873,"text":1874},"60b619dca6eb",[],"4 large carrots, peeled and cut into 1-inch pieces",[],{"_key":1877,"_type":253,"children":1878,"level":419,"listItem":420,"markDefs":1883,"style":262},"43db2df60a1a",[1879],{"_key":1880,"_type":257,"marks":1881,"text":1882},"d94f2b541bd6",[],"3 parsnips, peeled and cut into 1-inch pieces",[],{"_key":1885,"_type":253,"children":1886,"level":419,"listItem":420,"markDefs":1891,"style":262},"6ba0ad99820b",[1887],{"_key":1888,"_type":257,"marks":1889,"text":1890},"8fe25e9fb9fd",[],"2 medium sweet potatoes, peeled and cut into 1-inch cubes",[],{"_key":1893,"_type":253,"children":1894,"level":419,"listItem":420,"markDefs":1898,"style":262},"261642e488ff",[1895],{"_key":1896,"_type":257,"marks":1897,"text":452},"066a998f082c",[],[],{"_key":1900,"_type":253,"children":1901,"level":419,"listItem":420,"markDefs":1905,"style":262},"a66125820019",[1902],{"_key":1903,"_type":257,"marks":1904,"text":468},"5ad664df547e",[],[],{"_key":1907,"_type":253,"children":1908,"level":419,"listItem":420,"markDefs":1913,"style":262},"cd424ddbb954",[1909],{"_key":1910,"_type":257,"marks":1911,"text":1912},"889ccdd6f358",[],"3 tablespoons fresh rosemary, chopped",[],{"_key":1915,"_type":253,"children":1916,"level":419,"listItem":420,"markDefs":1920,"style":262},"a5014ae9a01f",[1917],{"_key":1918,"_type":257,"marks":1919,"text":484},"246933b2c6bb",[],[],{"_key":1922,"_type":253,"children":1923,"level":419,"listItem":420,"markDefs":1928,"style":262},"b70aeb71df1c",[1924],{"_key":1925,"_type":257,"marks":1926,"text":1927},"7bb7cef89a88",[],"4 cloves garlic, minced",[],{"_key":1930,"_type":253,"children":1931,"level":419,"listItem":420,"markDefs":1935,"style":262},"c80910db2d28",[1932],{"_key":1933,"_type":257,"marks":1934,"text":500},"1193b85ce302",[],[],{"_key":1937,"_type":253,"children":1938,"level":419,"listItem":420,"markDefs":1943,"style":262},"d9b73ccf2f37",[1939],{"_key":1940,"_type":257,"marks":1941,"text":1942},"d908d6dd6f57",[],"2 tablespoons balsamic vinegar (optional)",[],{"_key":1945,"_type":253,"children":1946,"level":419,"listItem":420,"markDefs":1950,"style":262},"0ad32737c933",[1947],{"_key":1948,"_type":257,"marks":1949,"text":1392},"84fbf04e483a",[],[],{"_key":1952,"_type":253,"children":1953,"markDefs":1957,"style":262},"ad93c9ac451f",[1954],{"_key":1955,"_type":257,"marks":1956,"text":508},"962ee99b5c7a",[259],[],{"_key":1959,"_type":253,"children":1960,"level":419,"listItem":517,"markDefs":1964,"style":262},"76bb3bdd1f28",[1961],{"_key":1962,"_type":257,"marks":1963,"text":516},"9a78d6a22ea6",[],[],{"_key":1966,"_type":253,"children":1967,"level":419,"listItem":517,"markDefs":1972,"style":262},"972ef782b42b",[1968],{"_key":1969,"_type":257,"marks":1970,"text":1971},"7fe09f798988",[],"In a large bowl, combine carrots, parsnips, sweet potatoes, and red onion.",[],{"_key":1974,"_type":253,"children":1975,"level":419,"listItem":517,"markDefs":1980,"style":262},"7966da2cff1a",[1976],{"_key":1977,"_type":257,"marks":1978,"text":1979},"e888b3824c99",[],"In a small bowl, whisk together olive oil, rosemary, thyme, garlic, salt, and pepper.",[],{"_key":1982,"_type":253,"children":1983,"level":419,"listItem":517,"markDefs":1988,"style":262},"c20d17fc7abb",[1984],{"_key":1985,"_type":257,"marks":1986,"text":1987},"cc8a079bafd9",[],"Pour herb oil over vegetables and toss until evenly coated.",[],{"_key":1990,"_type":253,"children":1991,"level":419,"listItem":517,"markDefs":1996,"style":262},"a8ff04894822",[1992],{"_key":1993,"_type":257,"marks":1994,"text":1995},"dd35cda8c82c",[],"Spread vegetables in a single layer on one or two large baking sheets (don't overcrowd).",[],{"_key":1998,"_type":253,"children":1999,"level":419,"listItem":517,"markDefs":2004,"style":262},"e0c5426b89dc",[2000],{"_key":2001,"_type":257,"marks":2002,"text":2003},"2f63ffa66d8f",[],"Roast for 35-40 minutes, stirring every 15 minutes, until vegetables are tender and caramelized at the edges.",[],{"_key":2006,"_type":253,"children":2007,"level":419,"listItem":517,"markDefs":2012,"style":262},"af8b2f817838",[2008],{"_key":2009,"_type":257,"marks":2010,"text":2011},"f70f65cfba29",[],"If using, drizzle with balsamic vinegar and toss. Garnish with fresh parsley.",[],{"_key":2014,"_type":253,"children":2015,"markDefs":2023,"style":262},"b44d01fa9ea8",[2016,2019],{"_key":2017,"_type":257,"marks":2018,"text":783},"aabc662d82b5",[259],{"_key":2020,"_type":257,"marks":2021,"text":2022},"d35fcbf75d35",[]," Leftover roasted vegetables can be pureed into soup, added to grain bowls, or mashed together for a colorful side dish the next day.",[],{"_key":2025,"_type":253,"children":2026,"markDefs":2031,"style":395},"628a9e71e27b",[2027],{"_key":2028,"_type":257,"marks":2029,"text":2030},"51ecfc0325b2",[],"Creamy Garlic Mashed Potatoes",[],{"_key":2033,"_type":253,"children":2034,"markDefs":2039,"style":262},"a967cc169fb2",[2035],{"_key":2036,"_type":257,"marks":2037,"text":2038},"fc579d7d0279",[],"No holiday table is complete without mashed potatoes, and this version delivers. Roasted garlic adds depth, while cream and butter make it indulgent. It’s rich, comforting, and endlessly spoonable.",[],{"_key":2041,"_type":253,"children":2042,"markDefs":2046,"style":262},"00ca4e57590e",[2043],{"_key":2044,"_type":257,"marks":2045,"text":410},"7474ca599682",[259],[],{"_key":2048,"_type":253,"children":2049,"level":419,"listItem":420,"markDefs":2054,"style":262},"c51bb7da36e2",[2050],{"_key":2051,"_type":257,"marks":2052,"text":2053},"8c51db33666f",[],"3 pounds Yukon gold potatoes, peeled and quartered",[],{"_key":2056,"_type":253,"children":2057,"level":419,"listItem":420,"markDefs":2062,"style":262},"5838b1c3c2f6",[2058],{"_key":2059,"_type":257,"marks":2060,"text":2061},"73ca7d6dbc44",[],"1 head garlic",[],{"_key":2064,"_type":253,"children":2065,"level":419,"listItem":420,"markDefs":2070,"style":262},"c6d8833c3a28",[2066],{"_key":2067,"_type":257,"marks":2068,"text":2069},"c4f5e87c0d60",[],"1 teaspoon olive oil",[],{"_key":2072,"_type":253,"children":2073,"level":419,"listItem":420,"markDefs":2078,"style":262},"56e094f1aa77",[2074],{"_key":2075,"_type":257,"marks":2076,"text":2077},"3113cb1b758d",[],"6 tablespoons butter, softened",[],{"_key":2080,"_type":253,"children":2081,"level":419,"listItem":420,"markDefs":2086,"style":262},"90f3dc442896",[2082],{"_key":2083,"_type":257,"marks":2084,"text":2085},"683826fb98ef",[],"1\u002F2 cup heavy cream, warmed",[],{"_key":2088,"_type":253,"children":2089,"level":419,"listItem":420,"markDefs":2094,"style":262},"e146ef2f5568",[2090],{"_key":2091,"_type":257,"marks":2092,"text":2093},"6785a3c594b6",[],"1\u002F2 cup whole milk, warmed",[],{"_key":2096,"_type":253,"children":2097,"level":419,"listItem":420,"markDefs":2101,"style":262},"4479570525ab",[2098],{"_key":2099,"_type":257,"marks":2100,"text":500},"9e6972606030",[],[],{"_key":2103,"_type":253,"children":2104,"level":419,"listItem":420,"markDefs":2109,"style":262},"fee21f42ec38",[2105],{"_key":2106,"_type":257,"marks":2107,"text":2108},"ab3b96df39ea",[],"3 tablespoons fresh chives, chopped",[],{"_key":2111,"_type":253,"children":2112,"markDefs":2116,"style":262},"7c405fce10c1",[2113],{"_key":2114,"_type":257,"marks":2115,"text":508},"2d104efb4442",[259],[],{"_key":2118,"_type":253,"children":2119,"level":419,"listItem":517,"markDefs":2124,"style":262},"022b9759e48e",[2120],{"_key":2121,"_type":257,"marks":2122,"text":2123},"b0281b15a5ed",[],"Preheat oven to 400°F. Cut top off garlic head, drizzle with olive oil, wrap in foil. Roast 35-40 minutes until soft and golden. Let cool, then squeeze out cloves.",[],{"_key":2126,"_type":253,"children":2127,"level":419,"listItem":517,"markDefs":2132,"style":262},"4aef7f90b136",[2128],{"_key":2129,"_type":257,"marks":2130,"text":2131},"dd3db93f07eb",[],"Place potatoes in a large pot and cover with cold salted water. Bring to a boil, then reduce heat and simmer 15-20 minutes until fork-tender.",[],{"_key":2134,"_type":253,"children":2135,"level":419,"listItem":517,"markDefs":2140,"style":262},"0d1701933c26",[2136],{"_key":2137,"_type":257,"marks":2138,"text":2139},"e8ec2a66f354",[],"Drain potatoes well and return to pot. Let steam for 1-2 minutes to remove excess moisture.",[],{"_key":2142,"_type":253,"children":2143,"level":419,"listItem":517,"markDefs":2148,"style":262},"3538b2a36d58",[2144],{"_key":2145,"_type":257,"marks":2146,"text":2147},"f9565399c177",[],"Add roasted garlic cloves and butter to potatoes. Mash with a potato masher until smooth.",[],{"_key":2150,"_type":253,"children":2151,"level":419,"listItem":517,"markDefs":2156,"style":262},"4313cd6689f1",[2152],{"_key":2153,"_type":257,"marks":2154,"text":2155},"c291f8bbd139",[],"Gradually stir in warm cream and milk until desired consistency is reached. You may not need all the liquid.",[],{"_key":2158,"_type":253,"children":2159,"level":419,"listItem":517,"markDefs":2164,"style":262},"21d0d455a784",[2160],{"_key":2161,"_type":257,"marks":2162,"text":2163},"f58d2b23ed2b",[],"Season generously with salt and pepper. Fold in chopped chives.",[],{"_key":2166,"_type":253,"children":2167,"level":419,"listItem":517,"markDefs":2172,"style":262},"efc297058693",[2168],{"_key":2169,"_type":257,"marks":2170,"text":2171},"a212e73d6812",[],"Serve immediately, or keep warm in a covered dish.",[],{"_key":2174,"_type":253,"children":2175,"markDefs":2183,"style":262},"0e2b0ab0f12c",[2176,2179],{"_key":2177,"_type":257,"marks":2178,"text":783},"ac7ef570ff49",[259],{"_key":2180,"_type":257,"marks":2181,"text":2182},"9fae2b08738b",[]," Base ratio is about 1\u002F2 pound of potatoes per person. Scale the recipe easily by adjusting the potato quantity proportionally. Leftover mashed potatoes make excellent potato cakes or shepherd's pie topping.",[],{"_key":2185,"_type":253,"children":2186,"markDefs":2191,"style":395},"7a1fd4888b8d",[2187],{"_key":2188,"_type":257,"marks":2189,"text":2190},"efdab6619d08",[],"Winter Grain Salad",[],{"_key":2193,"_type":253,"children":2194,"markDefs":2199,"style":262},"d71c8e6d8e24",[2195],{"_key":2196,"_type":257,"marks":2197,"text":2198},"d706a7b1a2cd",[],"This salad brings brightness to the table with arugula, roasted squash, pomegranate seeds, and a tangy apple cider vinaigrette. It’s a refreshing counterpoint to heavier dishes and works as both a side and a make-ahead main for next-day meals.",[],{"_key":2201,"_type":253,"children":2202,"markDefs":2206,"style":262},"5623732bc6aa",[2203],{"_key":2204,"_type":257,"marks":2205,"text":410},"a89e598dcaad",[259],[],{"_key":2208,"_type":253,"children":2209,"level":419,"listItem":420,"markDefs":2214,"style":262},"d01e2b3dd844",[2210],{"_key":2211,"_type":257,"marks":2212,"text":2213},"98d63b91055c",[],"1 1\u002F2 cups farro or quinoa, uncooked",[],{"_key":2216,"_type":253,"children":2217,"level":419,"listItem":420,"markDefs":2222,"style":262},"b48f6ad0c1f7",[2218],{"_key":2219,"_type":257,"marks":2220,"text":2221},"7dbdcdf36fb4",[],"2 cups butternut squash, peeled and cubed (1\u002F2-inch)",[],{"_key":2224,"_type":253,"children":2225,"level":419,"listItem":420,"markDefs":2230,"style":262},"d44b8c23dde1",[2226],{"_key":2227,"_type":257,"marks":2228,"text":2229},"8e7f83f91c56",[],"3 tablespoons olive oil, divided",[],{"_key":2232,"_type":253,"children":2233,"level":419,"listItem":420,"markDefs":2237,"style":262},"16d239ea5632",[2234],{"_key":2235,"_type":257,"marks":2236,"text":834},"75e6fa1d4aba",[],[],{"_key":2239,"_type":253,"children":2240,"level":419,"listItem":420,"markDefs":2245,"style":262},"532fa777cd2c",[2241],{"_key":2242,"_type":257,"marks":2243,"text":2244},"cdf0971e9273",[],"4 cups baby arugula",[],{"_key":2247,"_type":253,"children":2248,"level":419,"listItem":420,"markDefs":2253,"style":262},"62f183e5c6a8",[2249],{"_key":2250,"_type":257,"marks":2251,"text":2252},"de9dc1db70e4",[],"3\u002F4 cup pomegranate seeds",[],{"_key":2255,"_type":253,"children":2256,"level":419,"listItem":420,"markDefs":2261,"style":262},"89c11e4f9bd4",[2257],{"_key":2258,"_type":257,"marks":2259,"text":2260},"529ae410cfbb",[],"1\u002F2 cup pumpkin seeds, toasted",[],{"_key":2263,"_type":253,"children":2264,"level":419,"listItem":420,"markDefs":2269,"style":262},"cc1ceaa16163",[2265],{"_key":2266,"_type":257,"marks":2267,"text":2268},"fdca00f3db57",[],"4 oz feta cheese, crumbled",[],{"_key":2271,"_type":253,"children":2272,"level":419,"listItem":420,"markDefs":2277,"style":262},"deb599b91c3d",[2273],{"_key":2274,"_type":257,"marks":2275,"text":2276},"478071cdce41",[],"1\u002F4 cup fresh mint or parsley, chopped",[],{"_key":2279,"_type":253,"children":2280,"markDefs":2285,"style":262},"2be04c1acebb",[2281],{"_key":2282,"_type":257,"marks":2283,"text":2284},"ac3522210947",[259],"For the dressing:",[],{"_key":2287,"_type":253,"children":2288,"level":419,"listItem":420,"markDefs":2293,"style":262},"a2fd5971ec56",[2289],{"_key":2290,"_type":257,"marks":2291,"text":2292},"a7f797e13f1f",[],"1\u002F4 cup apple cider vinegar",[],{"_key":2295,"_type":253,"children":2296,"level":419,"listItem":420,"markDefs":2300,"style":262},"68acc1d62a8f",[2297],{"_key":2298,"_type":257,"marks":2299,"text":688},"bd39a67769ba",[],[],{"_key":2302,"_type":253,"children":2303,"level":419,"listItem":420,"markDefs":2308,"style":262},"8607801a1daa",[2304],{"_key":2305,"_type":257,"marks":2306,"text":2307},"904eefbf649d",[],"1 tablespoon maple syrup",[],{"_key":2310,"_type":253,"children":2311,"level":419,"listItem":420,"markDefs":2316,"style":262},"e3662fd2efb9",[2312],{"_key":2313,"_type":257,"marks":2314,"text":2315},"0c0ff23707a9",[],"1\u002F3 cup olive oil",[],{"_key":2318,"_type":253,"children":2319,"level":419,"listItem":420,"markDefs":2323,"style":262},"47c901747f8f",[2320],{"_key":2321,"_type":257,"marks":2322,"text":834},"22fc34384fce",[],[],{"_key":2325,"_type":253,"children":2326,"markDefs":2330,"style":262},"077499434f54",[2327],{"_key":2328,"_type":257,"marks":2329,"text":508},"b0a940da519f",[259],[],{"_key":2332,"_type":253,"children":2333,"level":419,"listItem":517,"markDefs":2338,"style":262},"372b5dd5df25",[2334],{"_key":2335,"_type":257,"marks":2336,"text":2337},"10b13c393fcd",[],"Preheat oven to 400°F. Cook farro or quinoa according to package directions. Drain, fluff, and let cool.",[],{"_key":2340,"_type":253,"children":2341,"level":419,"listItem":517,"markDefs":2346,"style":262},"61974e28b2c4",[2342],{"_key":2343,"_type":257,"marks":2344,"text":2345},"61ec186e3696",[],"Toss butternut squash with 1 tablespoon olive oil, salt, and pepper. Spread on a baking sheet and roast 25-30 minutes until tender and caramelized. Let cool.",[],{"_key":2348,"_type":253,"children":2349,"level":419,"listItem":517,"markDefs":2354,"style":262},"31adae66cfe4",[2350],{"_key":2351,"_type":257,"marks":2352,"text":2353},"0cde4be62ff4",[],"Make dressing: Whisk together vinegar, Dijon, maple syrup, salt, and pepper. Slowly drizzle in olive oil while whisking until emulsified.",[],{"_key":2356,"_type":253,"children":2357,"level":419,"listItem":517,"markDefs":2362,"style":262},"2ecac1f8fa0f",[2358],{"_key":2359,"_type":257,"marks":2360,"text":2361},"1474ab83a174",[],"In a large bowl, combine cooled farro, roasted squash, arugula, pomegranate seeds, pumpkin seeds, and feta.",[],{"_key":2364,"_type":253,"children":2365,"level":419,"listItem":517,"markDefs":2370,"style":262},"e302c7bdc186",[2366],{"_key":2367,"_type":257,"marks":2368,"text":2369},"f174032717e2",[],"Drizzle with dressing and toss gently. Adjust seasoning to taste.",[],{"_key":2372,"_type":253,"children":2373,"level":419,"listItem":517,"markDefs":2378,"style":262},"5376e1b04d6e",[2374],{"_key":2375,"_type":257,"marks":2376,"text":2377},"da8de3a4c385",[],"Garnish with fresh herbs before serving.",[],{"_key":2380,"_type":253,"children":2381,"markDefs":2389,"style":262},"5679ff174e9c",[2382,2385],{"_key":2383,"_type":257,"marks":2384,"text":783},"d5fc2af4a3c3",[259],{"_key":2386,"_type":257,"marks":2387,"text":2388},"7f0e964882f5",[]," This salad actually improves when made a few hours ahead or overnight. Store dressing separately and toss just before serving. Keeps well for 2-3 days, making it perfect for leftovers.",[],{"_key":2391,"_type":253,"children":2392,"markDefs":2397,"style":378},"2dd9405f7563",[2393],{"_key":2394,"_type":257,"marks":2395,"text":2396},"d0d5c956a4a0",[],"Festive Desserts That Are Simple and Shareable",[],{"_key":2399,"_type":253,"children":2400,"markDefs":2405,"style":262},"57670d0fae92",[2401],{"_key":2402,"_type":257,"marks":2403,"text":2404},"1aa2bf808e9f",[],"These desserts finish your meal with something sweet, but not overdone. They’re easy to prep, easy to portion, and guaranteed to leave a good impression.",[],{"_key":2407,"_type":253,"children":2408,"markDefs":2413,"style":395},"a452629dec27",[2409],{"_key":2410,"_type":257,"marks":2411,"text":2412},"5c3eee854a85",[],"Individual Spiced Pear Crisps",[],{"_key":2415,"_type":253,"children":2416,"markDefs":2421,"style":262},"967d962e4873",[2417],{"_key":2418,"_type":257,"marks":2419,"text":2420},"ab9d4f5257b2",[],"Warm spiced pears topped with a crisp oat and nut crumble—these single-serve desserts feel personal and polished. They're perfect for making ahead and can be baked straight from the fridge.",[],{"_key":2423,"_type":253,"children":2424,"markDefs":2428,"style":262},"f70be100b965",[2425],{"_key":2426,"_type":257,"marks":2427,"text":410},"27f70792b211",[259],[],{"_key":2430,"_type":253,"children":2431,"level":419,"listItem":420,"markDefs":2436,"style":262},"af6f1ececcfa",[2432],{"_key":2433,"_type":257,"marks":2434,"text":2435},"54080167a788",[],"4 ripe but firm pears, peeled and sliced",[],{"_key":2438,"_type":253,"children":2439,"level":419,"listItem":420,"markDefs":2444,"style":262},"dbd90675d4ba",[2440],{"_key":2441,"_type":257,"marks":2442,"text":2443},"08cab35234ba",[],"2 tablespoons brown sugar",[],{"_key":2446,"_type":253,"children":2447,"level":419,"listItem":420,"markDefs":2452,"style":262},"bd353cf6e429",[2448],{"_key":2449,"_type":257,"marks":2450,"text":2451},"d813efcf22bd",[],"1 teaspoon cinnamon",[],{"_key":2454,"_type":253,"children":2455,"level":419,"listItem":420,"markDefs":2460,"style":262},"3bf86011b6d6",[2456],{"_key":2457,"_type":257,"marks":2458,"text":2459},"979c1dd79a63",[],"1\u002F4 teaspoon cardamom",[],{"_key":2462,"_type":253,"children":2463,"level":419,"listItem":420,"markDefs":2467,"style":262},"b8ef9667001a",[2464],{"_key":2465,"_type":257,"marks":2466,"text":1162},"cf625361e53e",[],[],{"_key":2469,"_type":253,"children":2470,"level":419,"listItem":420,"markDefs":2475,"style":262},"89ced8e5f600",[2471],{"_key":2472,"_type":257,"marks":2473,"text":2474},"38e207ea0656",[],"1 tablespoon cornstarch",[],{"_key":2477,"_type":253,"children":2478,"markDefs":2483,"style":262},"ed2a5c81443e",[2479],{"_key":2480,"_type":257,"marks":2481,"text":2482},"69aaa2c16bc2",[259],"For the topping:",[],{"_key":2485,"_type":253,"children":2486,"level":419,"listItem":420,"markDefs":2491,"style":262},"1dfb39dfe027",[2487],{"_key":2488,"_type":257,"marks":2489,"text":2490},"29298fe4a55e",[],"3\u002F4 cup old-fashioned oats",[],{"_key":2493,"_type":253,"children":2494,"level":419,"listItem":420,"markDefs":2499,"style":262},"62dd15b3be15",[2495],{"_key":2496,"_type":257,"marks":2497,"text":2498},"99a6d657b10b",[],"1\u002F2 cup all-purpose flour",[],{"_key":2501,"_type":253,"children":2502,"level":419,"listItem":420,"markDefs":2507,"style":262},"c961412e655e",[2503],{"_key":2504,"_type":257,"marks":2505,"text":2506},"482ebb34d170",[],"1\u002F2 cup walnuts, chopped",[],{"_key":2509,"_type":253,"children":2510,"level":419,"listItem":420,"markDefs":2515,"style":262},"5654df2f5126",[2511],{"_key":2512,"_type":257,"marks":2513,"text":2514},"a4fbcec5b4f9",[],"1\u002F3 cup brown sugar",[],{"_key":2517,"_type":253,"children":2518,"level":419,"listItem":420,"markDefs":2523,"style":262},"c7264a366c8f",[2519],{"_key":2520,"_type":257,"marks":2521,"text":2522},"bcafe9122178",[],"1\u002F4 teaspoon salt",[],{"_key":2525,"_type":253,"children":2526,"level":419,"listItem":420,"markDefs":2531,"style":262},"c1adacaac90e",[2527],{"_key":2528,"_type":257,"marks":2529,"text":2530},"f6b861492f77",[],"1\u002F4 teaspoon cinnamon",[],{"_key":2533,"_type":253,"children":2534,"level":419,"listItem":420,"markDefs":2539,"style":262},"74606657c8da",[2535],{"_key":2536,"_type":257,"marks":2537,"text":2538},"9e2581d79852",[],"6 tablespoons cold butter, cubed",[],{"_key":2541,"_type":253,"children":2542,"markDefs":2546,"style":262},"4736b24efb53",[2543],{"_key":2544,"_type":257,"marks":2545,"text":1408},"c781b9db4e7d",[259],[],{"_key":2548,"_type":253,"children":2549,"level":419,"listItem":420,"markDefs":2554,"style":262},"9a9baf67cf0d",[2550],{"_key":2551,"_type":257,"marks":2552,"text":2553},"571aff046e95",[],"Whipped cream or vanilla ice cream (optional)",[],{"_key":2556,"_type":253,"children":2557,"markDefs":2561,"style":262},"725b7e1c83ab",[2558],{"_key":2559,"_type":257,"marks":2560,"text":508},"066319dabddd",[259],[],{"_key":2563,"_type":253,"children":2564,"level":419,"listItem":517,"markDefs":2569,"style":262},"3a9c00fe549a",[2565],{"_key":2566,"_type":257,"marks":2567,"text":2568},"7a7a4b93ade4",[],"Preheat oven to 375°F. Lightly butter 6 ramekins (6-8 oz size).",[],{"_key":2571,"_type":253,"children":2572,"level":419,"listItem":517,"markDefs":2577,"style":262},"9b8ccd20a08f",[2573],{"_key":2574,"_type":257,"marks":2575,"text":2576},"7a3b8cdc2b40",[],"In a bowl, toss pears with brown sugar, cinnamon, cardamom, lemon juice, and cornstarch until evenly coated.",[],{"_key":2579,"_type":253,"children":2580,"level":419,"listItem":517,"markDefs":2585,"style":262},"0a335e11249e",[2581],{"_key":2582,"_type":257,"marks":2583,"text":2584},"24073be47a4c",[],"Divide pear mixture among ramekins.",[],{"_key":2587,"_type":253,"children":2588,"level":419,"listItem":517,"markDefs":2593,"style":262},"463c6a72fe87",[2589],{"_key":2590,"_type":257,"marks":2591,"text":2592},"9e890b7d9f92",[],"Make topping: In a bowl, combine oats, flour, walnuts, brown sugar, salt, and cinnamon. Add cold butter and use your fingers to work it into the mixture until crumbly with pea-sized pieces.",[],{"_key":2595,"_type":253,"children":2596,"level":419,"listItem":517,"markDefs":2601,"style":262},"b45c910661c7",[2597],{"_key":2598,"_type":257,"marks":2599,"text":2600},"63a9bf844292",[],"Sprinkle topping evenly over pears in each ramekin.",[],{"_key":2603,"_type":253,"children":2604,"level":419,"listItem":517,"markDefs":2609,"style":262},"b9928526c544",[2605],{"_key":2606,"_type":257,"marks":2607,"text":2608},"e2fd53fd793f",[],"Place ramekins on a baking sheet and bake 30-35 minutes until topping is golden and fruit is bubbling.",[],{"_key":2611,"_type":253,"children":2612,"level":419,"listItem":517,"markDefs":2617,"style":262},"46da8d7617ac",[2613],{"_key":2614,"_type":257,"marks":2615,"text":2616},"820abcf1147c",[],"Let cool 10 minutes before serving. Top with whipped cream or ice cream if desired.",[],{"_key":2619,"_type":253,"children":2620,"markDefs":2628,"style":262},"70dc1e58f9eb",[2621,2624],{"_key":2622,"_type":257,"marks":2623,"text":783},"d7e053d32665",[259],{"_key":2625,"_type":257,"marks":2626,"text":2627},"1f8e576dbddd",[]," Individual portions mean everyone gets exactly one serving with no awkward cutting. Make only the number of ramekins you need. Unbaked crisps can be frozen and baked from frozen, adding 10 minutes to baking time.",[],{"_key":2630,"_type":253,"children":2631,"markDefs":2636,"style":395},"536e52de67e3",[2632],{"_key":2633,"_type":257,"marks":2634,"text":2635},"0de66965dc8a",[],"Dark Chocolate & Orange Bark",[],{"_key":2638,"_type":253,"children":2639,"markDefs":2644,"style":262},"47e100b39109",[2640],{"_key":2641,"_type":257,"marks":2642,"text":2643},"11a3dfbcb9e1",[],"This chocolate bark looks fancy but takes less than 20 minutes of hands-on time. Studded with pistachios, orange zest, and cranberries, it’s a little sweet, a little bitter, and just salty enough. Plus, it travels well and makes a great gift.",[],{"_key":2646,"_type":253,"children":2647,"markDefs":2651,"style":262},"dc4d36591aec",[2648],{"_key":2649,"_type":257,"marks":2650,"text":410},"7e95cd456748",[259],[],{"_key":2653,"_type":253,"children":2654,"level":419,"listItem":420,"markDefs":2659,"style":262},"ef7856b99614",[2655],{"_key":2656,"_type":257,"marks":2657,"text":2658},"c2b18ca0436f",[],"12 oz dark chocolate (60-70% cacao), chopped",[],{"_key":2661,"_type":253,"children":2662,"level":419,"listItem":420,"markDefs":2667,"style":262},"05b1a7d41d29",[2663],{"_key":2664,"_type":257,"marks":2665,"text":2666},"ace16043a429",[],"Zest of 1 large orange",[],{"_key":2669,"_type":253,"children":2670,"level":419,"listItem":420,"markDefs":2675,"style":262},"f07741128617",[2671],{"_key":2672,"_type":257,"marks":2673,"text":2674},"a33209d64362",[],"1\u002F2 cup pistachios, roughly chopped",[],{"_key":2677,"_type":253,"children":2678,"level":419,"listItem":420,"markDefs":2683,"style":262},"28839f5bf6a6",[2679],{"_key":2680,"_type":257,"marks":2681,"text":2682},"ad239012b319",[],"1\u002F3 cup dried cranberries or candied orange peel",[],{"_key":2685,"_type":253,"children":2686,"level":419,"listItem":420,"markDefs":2691,"style":262},"d509087acdfe",[2687],{"_key":2688,"_type":257,"marks":2689,"text":2690},"03cdec390771",[],"Flaky sea salt for sprinkling",[],{"_key":2693,"_type":253,"children":2694,"markDefs":2698,"style":262},"2f6796484a7c",[2695],{"_key":2696,"_type":257,"marks":2697,"text":508},"7a49f17bb2e8",[259],[],{"_key":2700,"_type":253,"children":2701,"level":419,"listItem":517,"markDefs":2706,"style":262},"dbb03daa53b4",[2702],{"_key":2703,"_type":257,"marks":2704,"text":2705},"1e4aa4ffa24e",[],"Line a baking sheet with parchment paper.",[],{"_key":2708,"_type":253,"children":2709,"level":419,"listItem":517,"markDefs":2714,"style":262},"29d24b50880b",[2710],{"_key":2711,"_type":257,"marks":2712,"text":2713},"e155c7699814",[],"Melt chocolate: Place 2\u002F3 of the chocolate in a heatproof bowl over a pot of simmering water (double boiler). Stir until completely melted and smooth.",[],{"_key":2716,"_type":253,"children":2717,"level":419,"listItem":517,"markDefs":2722,"style":262},"a02b6ad33122",[2718],{"_key":2719,"_type":257,"marks":2720,"text":2721},"3bf700147710",[],"Remove from heat and stir in remaining 1\u002F3 chocolate. Stir until melted and chocolate cools slightly to about 88-90°F.",[],{"_key":2724,"_type":253,"children":2725,"level":419,"listItem":517,"markDefs":2730,"style":262},"e12adb22135d",[2726],{"_key":2727,"_type":257,"marks":2728,"text":2729},"d76d3c8a707b",[],"Pour chocolate onto prepared baking sheet. Use an offset spatula to spread into a thin, even layer (about 1\u002F4-inch thick).",[],{"_key":2732,"_type":253,"children":2733,"level":419,"listItem":517,"markDefs":2738,"style":262},"48a79f48888e",[2734],{"_key":2735,"_type":257,"marks":2736,"text":2737},"341fd50d0fce",[],"Immediately sprinkle orange zest, pistachios, and dried cranberries evenly over chocolate.",[],{"_key":2740,"_type":253,"children":2741,"level":419,"listItem":517,"markDefs":2746,"style":262},"84fd9ea946fe",[2742],{"_key":2743,"_type":257,"marks":2744,"text":2745},"fb833b87b1ee",[],"Finish with a light sprinkling of flaky sea salt.",[],{"_key":2748,"_type":253,"children":2749,"level":419,"listItem":517,"markDefs":2754,"style":262},"44c84cfeb8fc",[2750],{"_key":2751,"_type":257,"marks":2752,"text":2753},"6a9792266b17",[],"Refrigerate for 30 minutes until completely set.",[],{"_key":2756,"_type":253,"children":2757,"level":419,"listItem":517,"markDefs":2762,"style":262},"d6f79233bc24",[2758],{"_key":2759,"_type":257,"marks":2760,"text":2761},"5e7d012cbf56",[],"Break into irregular shards or pieces.",[],{"_key":2764,"_type":253,"children":2765,"level":419,"listItem":517,"markDefs":2770,"style":262},"ecaaaaa13fa3",[2766],{"_key":2767,"_type":257,"marks":2768,"text":2769},"2c3e185b70af",[],"Store in an airtight container at cool room temperature for up to 2 weeks.",[],{"_key":2772,"_type":253,"children":2773,"markDefs":2781,"style":262},"c82b21cbf15d",[2774,2777],{"_key":2775,"_type":257,"marks":2776,"text":783},"2586724def01",[259],{"_key":2778,"_type":257,"marks":2779,"text":2780},"0f4dd719f4a6",[]," Make as much or as little as you need! The recipe scales easily. Chocolate bark makes excellent edible gifts, and any pieces that don't get eaten during the gathering can be packaged up for guests to take home or enjoyed throughout the week.",[],{"_key":2783,"_type":253,"children":2784,"markDefs":2789,"style":378},"60599d2b2cf1",[2785],{"_key":2786,"_type":257,"marks":2787,"text":2788},"1f10f390d912",[],"Waste Less, Share More",[],{"_key":2791,"_type":253,"children":2792,"markDefs":2797,"style":262},"3f14e90580f8",[2793],{"_key":2794,"_type":257,"marks":2795,"text":2796},"2b4ed3e0f4b0",[],"These holiday recipes are meant to feed more than hunger. They invite you to slow down, cook with care, and make choices that reflect your values. Thoughtful cooking is not just practical; it brings people together, makes ingredients go further, and creates space for something more meaningful.",[],{"_key":2799,"_type":253,"children":2800,"markDefs":2805,"style":262},"056c12190f73",[2801],{"_key":2802,"_type":257,"marks":2803,"text":2804},"7f5d01431341",[],"Planning ahead, using what you have, and being flexible with ingredients are small habits that help reduce waste and make meals more manageable. Every time you choose to cook with intention, you are doing more than filling a plate. You are showing up for your guests, your community, and the planet.",[],{"_key":2807,"_type":253,"children":2808,"markDefs":2813,"style":262},"4a22d58c43fd",[2809],{"_key":2810,"_type":257,"marks":2811,"text":2812},"1930aa63a39a",[],"If you ever need a little help along the way, the Too Good To Go app is one way to make smarter food choices. It connects you with local stores offering grocery Surprise Bags, where you can pick up ingredients like these at half the original price or less. It is a simple way to plan your meal, reduce waste, and support local food spots in the process.",[],{"_key":2815,"_type":253,"children":2816,"markDefs":2821,"style":262},"50b5bef6b1c4",[2817],{"_key":2818,"_type":257,"marks":2819,"text":2820},"7d7d7806abd6",[],"Gathering around good food should feel generous, not excessive. This season, make what you can. Share what you have. And enjoy every bite.",[],{"_key":2823,"_type":253,"children":2824,"markDefs":2829,"style":262},"dbe168f2e012",[2825],{"_key":2826,"_type":257,"marks":2827,"text":2828},"cc62ec6a0a88",[],"",[],{"_key":2831,"_type":253,"children":2832,"markDefs":2836,"style":262},"534c546b3c17",[2833],{"_key":2834,"_type":257,"marks":2835,"text":2828},"254ea40c071d",[],[],{"_key":2838,"_type":253,"children":2839,"markDefs":2844,"style":378},"65b8239dfe44",[2840],{"_key":2841,"_type":257,"marks":2842,"text":2843},"6c55e5ff725a",[],"Frequently Asked Questions About Holiday Recipes and Gatherings",[],{"_key":2846,"_type":253,"children":2847,"markDefs":2852,"style":262},"4ccaced7c64b",[2848],{"_key":2849,"_type":257,"marks":2850,"text":2851},"ab689615853c",[259],"What are the best ways to reduce food waste during the holidays?",[],{"_key":2854,"_type":253,"children":2855,"markDefs":2860,"style":262},"e4b5fa08bbc7",[2856],{"_key":2857,"_type":257,"marks":2858,"text":2859},"33bbbf571b6d",[],"Plan meals with leftovers in mind, store food properly, and find creative ways to use up ingredients before they spoil. Recipes like strata, soup, and hash are perfect for this. Use the Too Good To Go app (https:\u002F\u002Fwww.toogoodtogo.com\u002Fen-us) to pick up unsold food from local grocers, restaurants, bakeries, and more!",[],{"_key":2862,"_type":253,"children":2863,"markDefs":2868,"style":262},"04f9de34dc80",[2864],{"_key":2865,"_type":257,"marks":2866,"text":2867},"b1f58f635da9",[259],"Can I freeze holiday leftovers?",[],{"_key":2870,"_type":253,"children":2871,"markDefs":2876,"style":262},"edc645ed7e3b",[2872],{"_key":2873,"_type":257,"marks":2874,"text":2875},"e42e33bd12e2",[],"Yes. Most cooked proteins, roasted vegetables, and soups freeze well. Label containers with the date and reheat gently for best results. Soups, cooked meats, roasted vegetables, and breads freeze well. Let food cool completely, label containers with the date, and use within three months for best results.",[],{"_key":2878,"_type":253,"children":2879,"markDefs":2884,"style":262},"bae26537b137",[2880],{"_key":2881,"_type":257,"marks":2882,"text":2883},"9a28ec853f6c",[259],"How can Too Good To Go help during the holidays?",[],{"_key":2886,"_type":253,"children":2887,"markDefs":2892,"style":262},"6a8b38e16a9d",[2888],{"_key":2889,"_type":257,"marks":2890,"text":2891},"05cb1a497db3",[],"The holidays can get expensive, and Too Good To Go is one way to make your budget go further. It connects you with local restaurants, bakeries, and stores offering Surprise Bags filled with perfectly good food at a fraction of the original price. It is a simple way to discover great food, save money, and prevent waste all at once.",[],{"_key":2894,"_type":253,"children":2895,"markDefs":2900,"style":262},"e98e9ac15171",[2896],{"_key":2897,"_type":257,"marks":2898,"text":2899},"63aa0a9e33cb",[259],"What’s a good dish to bring to a holiday potluck using leftovers?",[],{"_key":2902,"_type":253,"children":2903,"markDefs":2908,"style":262},"5a3184c0f045",[2904],{"_key":2905,"_type":257,"marks":2906,"text":2907},"1a29ab8cf24b",[],"Stuffing cakes, bread pudding, or a veggie frittata are all great portable options that make the most of what you have on hand.",[],{"_key":2910,"_type":253,"children":2911,"markDefs":2916,"style":262},"86b544702725",[2912],{"_key":2913,"_type":257,"marks":2914,"text":2915},"14071a375e5e",[259],"What’s a good way to reheat leftovers without losing texture?",[],{"_key":2918,"_type":253,"children":2919,"markDefs":2924,"style":262},"e02809cab561",[2920],{"_key":2921,"_type":257,"marks":2922,"text":2923},"07808a2a0251",[],"Skip the microwave when you can. Reheat items like stuffing cakes, quesadillas, or potato pancakes in a skillet or oven to bring back their crisp edges.",[],{"_key":2926,"_type":253,"children":2927,"markDefs":2932,"style":262},"ce386ba6be5c",[2928],{"_key":2929,"_type":257,"marks":2930,"text":2931},"a113959b70f3",[259],"What if I’m cooking for a mix of dietary needs?",[],{"_key":2934,"_type":253,"children":2935,"markDefs":2940,"style":262},"ccedd2fc854f",[2936],{"_key":2937,"_type":257,"marks":2938,"text":2939},"3429f2f83cbe",[],"Most of the recipes in this guide are adaptable! You can swap in plant-based proteins, dairy-free alternatives, or gluten-free ingredients depending on your needs. Use what you have and what works for your guests.",[],{"_key":2942,"_type":253,"children":2943,"markDefs":2947,"style":262},"79e33b9bc9db",[2944],{"_key":2945,"_type":257,"marks":2946,"text":2828},"a6ada0c0f884",[],[],"default",[2950,2984,3021],{"_key":2951,"_type":2952,"buttons":2953,"content":2957,"theme":2983},"1jkf7lre7g28","modularContentBlocks.outer.cta",[2954],{"_key":2955,"_type":149,"buttonColor":150,"buttonText":2956,"link":8,"variant":152},"a282dd0ebbbc","Download the app",[2958,2971],{"_key":2959,"_type":2960,"description":2961,"size":2948,"title":2962,"variant":2948},"6dk1pal4i10a","modularContentBlocks.inner.title",[],[2963],{"_key":2964,"_type":253,"children":2965,"markDefs":2970,"style":262},"GZyjLe6U5nxM0R9gPkHYAG",[2966],{"_key":2967,"_type":257,"marks":2968,"text":2969},"GZyjLe6U5nxM0R9gPkHYCa",[],"start saving food today",[],{"_key":2972,"_type":2973,"text":2974},"is9la02ijx8m","modularContentBlocks.inner.baseText",[2975],{"_key":2976,"_type":253,"children":2977,"markDefs":2982,"style":262},"740b5c918016",[2978],{"_key":2979,"_type":257,"marks":2980,"text":2981},"2f54f31664640",[],"Our app is the world's largest marketplace for surplus food. We help users rescue good food from going to waste, offering great value for money at local stores, cafes and restaurants.",[],"dark",{"_key":2985,"_type":2986,"alignment":2987,"content":2988,"extraSpacing":45,"theme":2983,"variant":3020},"bndt73pfqirw","modularContentBlocks.outer.section","center",[2989,3001,3005],{"_key":2990,"_type":2960,"description":2991,"preTitle":8,"size":2948,"title":2992,"variant":2987},"80hf92fygbfk",[],[2993],{"_key":2994,"_type":253,"children":2995,"markDefs":3000,"style":262},"GZyjLe6U5nxM0R9gPkHYEu",[2996],{"_key":2997,"_type":257,"marks":2998,"text":2999},"GZyjLe6U5nxM0R9gPkHYHE",[],"Too good to go blog",[],{"_key":3002,"_type":3003,"listingDocument":331,"listingType":3004},"0zn20h9ot6i0","modularContentBlocks.inner.listing","latest",{"_key":3006,"_type":3007,"buttons":3008,"variant":2987},"l1m71gx3wqqc","modularContentBlocks.inner.buttonGroup",[3009],{"_key":3010,"_type":3011,"link":3012,"title":3018,"variant":3019},"cb6c6aecbe6c","button",{"_type":3013,"internal":3014,"internalAnchor":8,"linkType":3016,"otherLocales":45,"reference":3017},"link",{"_ref":3015,"_type":13,"_weak":44},"singleton-pages-en-us-about-food-waste-blog-home","internal",{"_type":83,"locale":38,"slug":245},"More blog posts","text","noImage",{"_key":3022,"_type":2986,"alignment":2987,"content":3023,"extraSpacing":45,"theme":2983,"variant":3020},"fd20632i3coe",[3024,3043],{"_key":3025,"_type":2960,"description":3026,"preTitle":8,"size":3027,"title":3028,"variant":2987},"jq0ms9uze8v9",[],"small",[3029],{"_key":3030,"_type":253,"children":3031,"markDefs":3042,"style":262},"GZyjLe6U5nxM0R9gPkHYJY",[3032,3036,3038],{"_key":3033,"_type":257,"marks":3034,"text":3035},"wHKr7lvBejmoAuZJ6jL8XE",[],"JOIN over ",{"_key":3037,"_type":272,"dataType":273,"text":288},"stat-1764846117414-wcj9ynzxu",{"_key":3039,"_type":257,"marks":3040,"text":3041},"wHKr7lvBejmoAuZJ6jL8bO",[]," BUSINESSES FIGHTING FOOD WASTE WITH US",[],{"_key":3044,"_type":3007,"buttons":3045,"variant":2987},"mbqmmpj8a8c2",[3046,3048],{"_key":3047,"_type":149,"buttonColor":150,"buttonText":2956,"link":8,"variant":152},"4029981371e9",{"_key":3049,"_type":3011,"link":3050,"title":3052,"variant":2948},"fd77cb9e97ff",{"_type":3013,"linkType":3051,"otherLocales":45,"ssu":159},"ssu","Sign up your business",{"_type":3054,"alt":3055,"asset":3056,"fit":25},"imageWithAlt","A woman serves food to smiling friends at a festive dinner party with candles and lights.",{"_ref":3057,"_type":13},"image-5ee78397b6c3c0275b0a1d11367fbea9a394dc2e-4797x3188-jpg","public",{"_ref":3060,"_type":13},"singleton-pages-en-gb-about-food-waste-blog-home","Too Good To Go Blog","2025-12-01T20:46:00.000Z",{"metaDescription":3064,"metaTitle":3065},"Gather well and waste less with 12 delicious recipes designed for sharing. Flexible, flavorful dishes that fit any group, any tradition, in any kitchen.","Waste-Less Holiday Cooking: 12 Recipes to Share and Save",{"_type":3067,"current":3068},"slug","waste-less-holiday-cooking-12-recipes-to-share-and-save",[],{"posts":3071,"totalPosts":3118},[3072,3085,3096,3107],{"_createdAt":3073,"_id":3074,"categories":8,"content":3075,"excerpt":3076,"file":8,"image":3077,"language":38,"migrated":8,"pretitle":3061,"publishedAt":3082,"slug":3083,"title":3084,"updatedAt":8,"url":8},"2026-07-29T21:33:25Z","5e40ad59-48fe-4b27-b40e-e485a2dc8db9","Restaurant operators have had to navigate years of rising costs. Between 2020 and 2026 alone, total food costs for the average restaurant increased by 34%, putting even more pressure on already tight margins. Add in expenses like utilities, occupancy, and credit card processing fees, and there isn’t much room for error. The good news? Food is one of the few major costs operators can actively control.\n\n\n\nRaising menu prices or shrinking portions may seem like the obvious answer, but they’re far from the only solutions. Understanding your food cost percentage helps you spot opportunities to improve profitability while protecting the quality your guests expect. The first step is knowing what this metric actually measures and how to use the food cost percentage formula to make smarter decisions every day.\n\n\nWhat Is Food Cost Percentage in Restaurants?\n\nIf ingredients feel pricier than ever, you’re not imagining it. More than 80% of operators reported higher food costs in 2025. However, ingredients don’t tell the whole story. Food cost percentage measures how much of your food sales revenue is spent on ingredients. It’s one of the clearest indicators of menu profitability because it shows how efficiently your kitchen turns inventory into revenue, rather than just how much you’re spending.\n\n\n\nMost restaurants monitor both ideal and actual food cost. Ideal food cost is based on recipe costs and expected portions, assuming every ingredient is used exactly as planned. Actual food cost reflects what really happened in your kitchen, including spoilage, overportioning, prep waste, and other losses. The gap between the two often reveals where opportunities for improvement exist.\n\n\n\nSpending $8,000 on ingredients isn’t inherently good or bad. The real value comes from calculating food costs in relation to overall restaurant revenue. Spending $8,000 to generate $20,000 in food sales tells a very different story than spending the same amount to generate $35,000. Food cost percentage puts spending in the context of sales, making it much easier to compare performance over time and identify changes that deserve a closer look.\n\n\n\nHow to Calculate Your Food Cost Percentage\n\nCalculating your restaurant’s food cost percentage is straightforward once you know which version you’re using: the ideal food cost formula or the actual food cost formula. Here’s a step-by-step guide to do just that.\n\n\n\nIdeal Food Cost Percentage Formula\n\nIdeal food cost compares the expected cost of ingredients to the revenue those menu items generate:\n\n\n\nIdeal Food Cost % = Food Cost ÷ Food Sales × 100\n\n\n\nFor example, if a menu item costs $8 in ingredients and generates $30 in sales, your ideal food cost percentage would be 26.7%. Calculating your ideal food cost helps you realize whether individual menu items are priced to support healthy margins before they ever reach the kitchen’s expo line.\n\n\n\nActual Food Cost Percentage Formula\n\nActual food cost starts with your cost of goods sold (COGS), which accounts for inventory used during a specific period:\n\n\n\nStep 1. Calculate Actual COGS\n\nActual COGS = Opening Inventory + Purchases − Ending Inventory\n\n\n\nStep 2: Calculate Actual Food Cost Percentage\n\nActual Food Cost % = Actual COGS ÷ Food Sales × 100\n\n\n\nFor example, imagine you begin the week with $6,000 in inventory, purchase another $4,000 in ingredients mid-week, and finish with $2,500 in inventory. Your actual COGS is $7,500. If the restaurant generated $25,000 in weekly food sales, your actual food cost percentage would be 30%.\n\n\n\nThough these are hypothetical figures, comparing your actual percentage to your ideal percentage can reveal where costs are creeping higher than expected. Food waste is often a major contributor. Limited- and full-service restaurants generate more than $103 billion in surplus food each year, making waste reduction an overlooked tactic to improve profitability without sacrificing food quality.\n\n\n\nWhat Is a Good Food Cost Percentage?\n\nThere’s no single food cost percentage every restaurant should aim for. While food costs account for roughly 33 cents of every dollar in restaurant sales on average, that figure is just a broad industry snapshot. What’s considered healthy or sustainable depends on your restaurant’s concept, menu, and business model, making comparisons across different types of restaurants less meaningful.\n\n\n\nQuick-service restaurants, for instance, often operate with lower food costs because of standardized menus and efficient operations. On the other hand, casual dining and fine dining restaurants may accept higher food costs in exchange for premium ingredients or elevated guest experiences. Restaurants with alcohol and other specialty beverage menus may also look different than concepts focused primarily on food sales.\n\n\n\nThe food cost percentage formula becomes most useful when you compare your own performance over time or benchmark against restaurants with a similar concept. A number that’s healthy for one business may not be realistic (or even desirable) for another. Rather than chasing an industry average, focus on the operational changes that have the greatest influence on your own results.\n\n\n\nWhat Drives Food Cost Percentage?\n\nNo single factor determines your food cost percentage. Instead, it reflects dozens of daily decisions made across purchasing, pricing, and service. Understanding the biggest drivers helps you identify where small operational improvements can have the greatest impact on profitability without compromising the guest experience.\n\n\n\nMenu Pricing\n\nThe prices on your menu are just as important as the cost of the ingredients on the plate. Even if ingredient prices stay exactly the same, your food cost percentage can increase if menu prices no longer reflect rising operating expenses like labor and utility costs. Regularly reassessing menu prices helps protect margins while ensuring each dish continues to support the financial goals of your restaurant.\n\n\n\nIngredient Costs\n\nEvery ingredient that enters your kitchen becomes part of the food cost percentage formula. Supplier price increases, commodity market fluctuations, and seasonal availability can all raise your costs before a dish ever reaches the customer. Periodically reviewing vendor pricing and evaluating substitutions can help offset higher expenses without lowering food quality. Building menus around seasonal ingredients can also help reduce produce costs while keeping offerings fresh for guests.\n\n\n\nPortion Control\n\nOnce ingredients reach the kitchen, consistency becomes the next priority. A single extra ounce of protein or an oversized scoop of fries may not seem significant, but repeated across hundreds of orders, those small differences add up quickly. Maintaining consistent recipes and portions helps stabilize your food cost percentage while giving guests the reliable dining experience they expect every visit.\n\n\n\nFood Waste\n\nNot every cost comes from the meals you serve. Food waste can happen at nearly every stage of kitchen operations. Some losses happen during prep through trim waste; others happen when ingredients spoil in storage or prepared food goes unsold at the end of the day. Since the actual food cost percentage formula accounts for all inventory used, those costs still count even if the food never generates revenue.\n\n\n\nInventory Management\n\nThe final piece is making sure you know exactly what’s in your kitchen and how quickly it’s moving. Over-ordering, inaccurate inventory counts, and products that expire before they’re used all increase costs unnecessarily. Following practices like first in, first out (FIFO) and ordering based on expected demand helps keep your food cost percentage aligned with actual sales instead of avoidable losses.\n\n\n\nHow to Lower Food Cost Percentage Without Sacrificing Quality\n\nEvery restaurant has opportunities to improve profitability without cutting corners. You don’t have to overhaul your prices or slice portion sizes overnight to improve your food cost percentage. Instead, focusing on a handful of operational best practices can help lower it over time while protecting the consistency and quality your guests expect. Consider small steps, such as:\n\n\n\nOptimize your menu mix. Highlight dishes with stronger margins, and regularly review menu performance to identify items that no longer support your profitability goals.\n\nStandardize recipes and portions. Consistent preparation helps reduce unnecessary food costs while giving guests the same experience every time they order.\n\nStrengthen inventory practices. Keep inventory accurate, use FIFO on all new purchases, and prep ingredients before they expire to minimize avoidable losses.\n\nImprove demand forecasting. Prepare closer to expected demand to help reduce overproduction while making sure popular menu items remain available.\n\nRecover value from surplus food. Leverage surplus food marketplaces to sell eligible unsold food instead of treating it as a complete loss.\n\n\n\nEven the best-performing restaurants occasionally end the day with perfectly good food that never gets sold. Rather than writing those items off entirely, many restaurants use surplus food marketplaces to recover a portion of their costs while reducing the amount of food waste each shift. It’s a practical way to improve profitability without changing recipes or compromising the guest experience. Too Good To Go gives restaurants a simple way to put this strategy into action.\n\n\n\nToo Good To Go helps restaurants recover value from eligible surplus food through discounted Surprise Bags. Restaurants bundle available items, set a pickup window that fits their operations, and list the Surprise Bags in the app. Customers purchase directly through Too Good To Go, then collect their order during the designated pickup window. Less food goes to waste, more revenue comes from surplus food, and restaurants have another way to connect with local customers.\n\n\n\nFood Cost Percentage Is About More Than Spending Less\n\nImproving your food cost percentage isn’t about slashing ingredient costs; it’s about making the most of every dollar you spend. Restaurants that consistently protect their margins do so by pricing thoughtfully, serving consistent portions, and managing inventory carefully. Reducing avoidable waste is another way to strengthen profitability while continuing to deliver the quality guests expect.\n\n\n\nToo Good To Go helps restaurants turn eligible surplus food into an opportunity instead of a loss. By recovering value from food that might otherwise go unsold, restaurants can not only reduce waste but also improve profitability and introduce more local customers to what they have to offer. Sell your surplus food on Too Good to Go today.\n\n\n\nStart selling your surplus food today\n\n\n\n\n\nFAQs About Food Cost Percentage\n\nWhat is the difference between food cost and food cost percentage?\n\nFood cost is the total amount you spend on ingredients. Food cost percentage compares that spending to your food sales, giving you a clearer picture of profitability. Two restaurants may spend the same amount on ingredients, but the one generating more sales from those ingredients will have a healthier food cost percentage.\n\n\n\nHow often should restaurants calculate food cost percentage?\n\nMany restaurants calculate food cost percentage weekly so they can spot changes before they become larger problems. Others review it daily for high-volume operations or monthly for broader financial reporting. The right schedule depends on your operation, but reviewing it consistently makes it easier to identify trends and respond quickly.\n\n\n\nCan reducing food waste improve restaurant profitability?\n\nYes. Reducing food waste helps restaurants make better use of the inventory they’ve already purchased. Improvements such as accurate portioning, stronger inventory management, better demand forecasting, and recovering value from eligible surplus food can all help improve profitability without compromising food quality or the guest experience.\n\n\n\nHow does Too Good To Go work for restaurants?\n\nToo Good To Go helps restaurants recover value from eligible surplus food through discounted Surprise Bags (https:\u002F\u002Fwww.toogoodtogo.com\u002Fen-us\u002Fsurplus-food-marketplace). Restaurants bundle available items, choose a pickup window that fits their operations, and list the Surprise Bags in the app. Customers purchase them directly through Too Good To Go and collect their order during the designated pickup time.\n\n\n\nDoes using Too Good To Go create extra work for restaurant staff?\n\nToo Good To Go is designed to fit into existing restaurant workflows. Since restaurants decide when to list Surprise Bags and when customers can pick them up, staff can choose a process that works alongside normal service. Instead of preparing separate meals, restaurants package eligible surplus food that would otherwise go unsold.\n\n\n\nWhat can restaurants include in a Too Good To Go Surprise Bag?\n\nSurprise Bags can include a variety of eligible surplus food that remains fresh and safe to enjoy but is unlikely to sell before the end of a shift. Depending on the restaurant, that may include prepared meals, baked goods, sandwiches, salads, side dishes, or desserts. Because availability changes daily, the contents are always a surprise for customers.","Understand the food cost percentage formula and what it reveals about restaurant profitability. Learn practical ways to reduce costs without cutting quality.",{"_type":3054,"alt":3078,"asset":3079,"fit":3081},"A woman in an apron chopping an onion in a professional kitchen.",{"_ref":3080,"_type":13},"image-4402ca664dda2297627d47aee9cbea48ac1d73cd-4096x2160-jpg","contain","2026-07-30T22:00:00.000Z","\u002Fblog\u002Ffood-cost-percentage","How Restaurants Can Reduce Food Cost Percentage Without Cutting Quality",{"_createdAt":3086,"_id":3087,"categories":8,"content":3088,"excerpt":8,"file":8,"image":3089,"language":38,"migrated":8,"pretitle":3061,"publishedAt":3093,"slug":3094,"title":3095,"updatedAt":8,"url":8},"2026-07-23T15:11:53Z","59984dd0-7a11-4524-971d-80ac6401a4e5","There’s something satisfying about stumbling across a grocery store you never knew existed. Maybe it’s the neighborhood market with incredible produce, or the specialty shop that carries ingredients you can’t find anywhere else. Perhaps it’s the regional supermarket that everyone else seems to have known about all along. Those unexpected finds can completely change the way you shop, and they’re often closer than you think.\n\n\n\nIf you’ve ever searched “local grocery stores near me” and wondered whether there was more to discover than the same handful of familiar chains, you’re asking the right question. The truth is, local groceries come in many forms, from independently owned markets to neighborhood fruit stands that don’t always make the top of popular search results. Here’s how to discover better local grocery options, wherever you live.\n\n\n\nHave You Been Overlooking Local Groceries?\n\nMany people hear the phrase ‘local groceries’ and immediately picture the big-box retailer that’s down the block or the neighborhood supermarket that’s been a staple in the community for the past 30 years. While those retailers certainly qualify, they’re only part of the story. Some of the best neighborhood finds are the local grocery stores you may already pass by every week without a second thought. Consider options like:\n\n\n\nButcher shops\n\nProduce markets\n\nInternational markets\n\nBakeries with grocery selections\n\nRegional grocery chains\n\nIndependent grocers\n\nNatural food stores\n\nFarmer’s markets\n\n\n\nLocal groceries aren’t defined by store size or if they’re part of a larger company. What matters is that they serve your community and offer something worth discovering, whether that’s seasonal veggies, specialty ingredients, or simply a better shopping experience. Finding one of those overlooked stores has a way of making you wonder what other hidden gems are waiting for you nearby. Luckily, they’re not hard to find.\n\n\n\nHow to Find Great Local Grocery Stores Near You\n\nIt’s one thing to search for local grocery stores every time you’re on a food run, and it’s another to know what to look for once those search results appear. A little curiosity can uncover neighborhood favorites that deserve a place in your regular grocery rotation. The tips below will help you compare your options and discover the hidden gems that may have been right around the corner all along.\n\n\n\nStart with Neighborhood Search Tools\n\nA Google search is a great place to begin, but chances are, you’ve been to those retailers a dozen times in the past few months. Plus, many hidden gems build loyal followings through word of mouth rather than big marketing budgets. Some of the best neighborhood finds won’t necessarily appear at the top of search results. Instead, start with Google Maps, and spend a few minutes checking more than just the overall star rating.\n\n\n\nFirst, read what nearby shoppers actually have to say. Do they rave about the produce? Mention friendly staff? Talk about making a special trip because the selection is worth it? Those details often paint a far clearer picture of the available local groceries than a five-star review ever could.\n\n\n\nOnce you’ve done that, see what your community recommends. Neighborhood Facebook groups and local Reddit threads are full of shoppers sharing their favorite hidden gems, whether it’s the produce market they swear by or the regional grocery store they wish they’d discovered sooner.\n\n\n\nThen Look Beyond Price Tags\n\nNow that you’ve found a few promising stores, it’s time to see what makes each one worth returning to in the first place. Price matters, of course, but it shouldn’t be the only thing guiding your decision. A grocery store that saves you a few dollars isn’t always the one that offers the best overall value.\n\n\n\nStart in the produce department. Fruits and vegetables should look fresh, well-stocked, and carefully maintained. From there, wander the aisles instead of sticking to your shopping list. You might spot locally-made products or artisan-crafted specialty ingredients that aren’t available at larger chains. These types of one-of-a-kind finds are what make breaking your usual routine worth it when shopping for local groceries.\n\n\n\nIf your week is packed with work or school pickups, don’t skip the prepared foods section either. Ready-to-cook meals and grab-and-go dinners can make busy evenings much easier while introducing you to dishes you may not have tried otherwise. As you checkout, pay attention to the atmosphere. Helpful employees and clean aisles often say just as much about the shopping experience as what’s sitting on the shelves.\n\n\n\nBe Sure to Visit at Different Times\n\nAfter you’ve narrowed your list to a few promising retailers, don’t stop after a single visit. Every store has its own rhythm, and getting to know it can make the difference between a good shopping trip and a great one. Returning at different times of day helps you understand when selection is at its best, what local groceries tend to sell quickly, and when you’re most likely to come across unexpected finds.\n\n\n\nFor instance, morning visits are often the best time to browse freshly stocked produce and bakery items before they're picked over. Later in the day, you may find unbeatable markdowns on prepared foods or other perishable items approaching their sell-by dates. If a store regularly carries seasonal specialties or local-made products, ask when deliveries arrive so you can plan your next visit around fresh inventory.\n\n\n\nBefore long, you’ll start to notice each store’s strengths. One may turn into your favorite stop for fresh fruit, another for weeknight meals, and another for ingredients you can’t seem to find elsewhere. That’s how the best hidden gems are discovered: not by luck, but by becoming a regular.\n\n\n\nHidden Grocery Gems Look Different in Every City\n\nThe best grocery discoveries don’t all look the same. Every neighborhood has its own shopping culture, so the stores worth exploring in one city may be completely different from those in another. Still, the strategy stays the same. No matter if you’re searching for local grocery stores near you in a major metro or a smaller town, look beyond the biggest chains and pay attention to the retailers people return to week after week.\n\n\n\nHere are a few examples of the kinds of local grocery stores worth seeking out in different cities:\n\nYou don’t have to live in one of these cities to put these ideas into practice. Every community has its own mix of neighborhood markets, regional grocery stores, and specialty shops to discover. Learning to spot those opportunities can open the door to better shopping, one new store at a time. Once you know what to look for, you’re far more likely to stumble across new favorites closer to home on every grocery run.\n\n\n\nSave Even More on Local Groceries with Too Good To Go\n\nNo matter where you call home, the biggest challenge is often knowing which stores are worth exploring first. Fortunately, there are more ways than ever to uncover nearby grocery stores you might have otherwise missed. One of them is the Too Good To Go app, a free-to-download surplus food marketplace that connects shoppers with nearby grocery stores and other food retailers selling unsold food at a major discount.\n\n\n\nIt’s a simple way to discover local groceries while stretching your budget a little further. Here’s how it works:\n\nFirst, browse nearby grocery stores and other food retailers in the app.\n\nNext, reserve a Surprise Bag for roughly one-third of its original retail value.\n\nThen, pick it up during the store’s designated pickup window.\n\nFinally, pick up your Surprise Bag and enjoy what’s inside.\n\n\n\nThe exact contents of each Surprise Bag are a mystery, but you’ll know the general type of food you’re reserving before you buy. That element of surprise is part of the fun. One pickup could introduce you to a neighborhood grocery store you’ve never visited before, while the next might help you discover a new favorite product. Along the way, you’ll save money, support local businesses, and stop good food from going to waste.\n\n\n\nDiscover More Local Grocery Stores Near You\n\nDiscovering local groceries doesn’t mean giving up your usual supermarket. It simply means expanding your options and staying open to stores you may have overlooked before. No matter where you’re located, every neighborhood has something worth exploring. Too Good To Go makes exploration even easier by helping you find nearby grocery stores offering discounted Surprise Bags that save money and help reduce food waste.\n\n\n\n\n\nDownload the Too Good To Go app and discover hidden grocery gems near you.\n\n\n\nFAQs About How to Find Local Groceries\n\nWhat’s considered a local grocery store?\n\nLocal grocery stores include far more than neighborhood supermarkets. They can also include independently owned markets, produce markets, butcher shops, natural food stores, regional grocery chains, bakeries with grocery selections, and specialty food retailers that serve your community.\n\n\n\nHow do I find local grocery stores near me?\n\nStart with Google Maps, then read customer reviews to learn what shoppers like about each store. Community Facebook groups and local Reddit threads are also great places to discover neighborhood favorites that may not appear at the top of search results. Surplus food marketplaces like Too Good To Go are another avenue to find nearby deals.\n\n\n\nHow can I tell if a grocery store is worth revisiting?\n\nLook beyond prices alone. Fresh produce, high-quality prepared foods, unique products, helpful staff, and a clean, welcoming environment are all signs that a store may be worth adding to your regular grocery rotation.\n\n\n\nWhen is the best time to visit a local grocery store?\n\nIt depends on what you’re shopping for. Morning visits often offer the best selection of fresh produce and bakery items, while later in the day, you may find markdowns on prepared foods and other perishable products. Asking when deliveries arrive can also help you shop when inventory is at its freshest.\n\n\n\nHow does Too Good To Go work?\n\nToo Good To Go connects shoppers with nearby grocery stores and other food retailers selling surplus food through discounted Surprise Bags. Browse participating stores in the app, reserve a Surprise Bag, then pick it up during the store’s designated pickup window. The exact contents are a surprise, but you’ll know the general category of food before you reserve.\n\n\n\nCan Too Good To Go help me discover new grocery stores?\n\nYes. Too Good To Go isn’t just a way to save money; it can also introduce you to grocery stores, markets, bakeries, and other food retailers you may not have visited before. Many shoppers use the app to discover new neighborhood favorites while helping reduce food waste.",{"_type":3054,"alt":3090,"asset":3091,"fit":25},"Shopper selecting fresh local produce",{"_ref":3092,"_type":13},"image-657171f1616772767b25cac575a0b85ad34f1b5d-5600x3733-jpg","2026-07-23T15:31:43.891Z","\u002Fblog\u002Flocal-groceries-near-you","Local Grocery Shopping: How to Find Hidden Gems in Your Neighborhood",{"_createdAt":3097,"_id":3098,"categories":8,"content":3099,"excerpt":8,"file":8,"image":3100,"language":38,"migrated":8,"pretitle":3061,"publishedAt":3104,"slug":3105,"title":3106,"updatedAt":8,"url":8},"2026-07-16T15:34:08Z","ea7c7036-95f6-41b0-9bf3-06d6cca2b74b","Food freshness affects countless decisions across the supply chain. It influences what customers buy, how businesses manage inventory, and which products ultimately end up going unsold, even when they’re perfectly edible. Many people assume freshness ends the moment a package reaches its printed date, yet the reality is often far more nuanced. Unfortunately, that misunderstanding has real consequences. Date label concerns alone account for 1.82 million tons of edible surplus food, making them the single largest contributor to food waste.\n\n\n\nA carton of yogurt, a loaf of bread, and a container of prepared food do not all lose freshness in the same way or at the same time. Quality changes differently across food categories, which means assessing freshness requires more than a quick glance at a label. Understanding what food freshness actually means is the first step toward making better decisions about food that might otherwise be discarded too soon.\n\n\n\nWhy Food Freshness is Misunderstood on Both Sides of the Counter\n\nOne of the biggest misconceptions about food freshness is that a printed date on a container or carton automatically determines whether a product should be eaten or discarded. Consumers often interpret dates as expiration deadlines, while businesses may feel pressure to remove products from shelves as those dates approach. In reality, most date labels are intended to communicate quality rather than safety.\n\n\n\nThe result is a significant amount of perfectly edible food being thrown away before it ever has a chance to be enjoyed. Common food date labels that cause confusion on both sides of the register include:\n\n\n\nSell By: Helps retailers manage inventory and stock rotation.\n\nEnjoy By: Suggests when a product is likely to provide the best eating experience.\n\nBest By: Indicates when a product is expected to have its best flavor, texture, or overall quality.\n\nUse By: Often signals the last recommended date for peak quality.\n\n\n\nInfant formula is the only product in the U.S. that is federally required to use a safety-based Use By date. Everything else is considered quality or inventory guidance. This distinction is important because many foods remain safe and enjoyable when stored properly. Learning how to keep food fresh through appropriate handling and storage can often extend a product’s usable life beyond what consumers might expect.\n\n\n\nThe Business Cost of Getting Food Freshness Wrong in Retail\n\nDate label confusion isn’t just a consumer issue. It has real financial consequences for food businesses, too. Roughly three-quarters of annual retail food waste, or $26.9 billion, comes from highly perishable categories such as produce, meat and seafood, prepared foods, and dairy. Yet nearly 45% of that food remains safe to enjoy, suggesting significant opportunities to recover value before products are discarded.\n\n\n* Based on 2024 ReFED food waste statistics\n\n\nThe financial impact extends beyond the value of the inventory itself. Employees still spend time monitoring products, rotating stock, and removing items that are no longer considered sellable. Disposal and hauling costs add another layer of expense, further increasing the impact of food waste. Improving how you evaluate food freshness can help uncover opportunities to recover value before those costs begin to accumulate.\n\n\n\nFood Freshness Looks Different Across Every Category\n\nDate labels can provide useful guidance, but they only tell part of the story. Too Good To Go’s Look, Smell, Taste initiative focuses on the signs of quality and true spoilage that date labels cannot always capture. The reason is simple: freshness doesn’t look the exact same across every category. A loaf of bread ages differently than a carton of yogurt, and neither follows the same pattern as fresh produce or seafood.\n\n\n\nMonitoring the specific characteristics of each category often provides a clearer picture than the date alone.\n\n\n\nProduce: Appearance Matters, But Looks Can Be Deceiving\n\nProduce may be one of the easiest categories to misjudge because visual imperfections are often mistaken for spoilage. A bruised apple, slightly limp greens, or a banana with brown spots may not look their best, but those changes are often a normal part of the aging process rather than signs the product is rotten. Still, consumers expressly avoid unattractive produce nearly all the time, contributing to both food waste and lost sales.\n\n\n\nWhen assessing food freshness in produce, appearance should be considered alongside texture and aroma. Lettuce that has become slimy or berries that smell fermented are very different from produce that is simply less vibrant than it was a few days earlier. Distinguishing between cosmetic changes and true spoilage can help businesses identify products that still have value before they’re tossed out of the food supply chain for good.\n\n\n\nDairy Products: Date Labels Are Only One Piece of the Puzzle\n\nUnlike produce—where visual appearance often drives purchasing decisions—dairy products tend to be judged more heavily by the date printed on the package. Still, many dairy items remain usable beyond their Best By date, particularly when they have been stored consistently at the proper temperature. For these reasons, food freshness in dairy is often better evaluated through changes in smell and texture.\n\n\n\nMilk may develop a distinctly sour odor when it begins to spoil, while yogurt and sour cream can become watery or separate beyond what is considered normal (or appetizing). Cheese presents its own challenges, with some varieties naturally changing texture as they age. For example, cheddar often becomes firmer and more crumbly over time, where Brie can soften and develop a creamier interior as it matures. Looking at the product itself, rather than relying solely on the date, often provides a clearer picture of its condition.\n\n\n\nMeat and Seafood: Storage and Temperature Matter Most\n\nWhile produce and dairy can often be evaluated through visible quality changes, meat and seafood require a greater emphasis on temperature control throughout their lifespan. There’s a reason restaurant and grocery inspectors routinely check cold storage temperatures during routine inspections. Proper cold-chain management plays a critical role in preserving meat and seafood freshness and reducing safety risks.\n\n\n\nColor is often one of the least reliable indicators of freshness in this category. Beef naturally changes color over time, yet many shoppers associate any amount of browning with spoilage. A more complete assessment considers whether products have been cold-held properly throughout storage and transport. Excessive moisture, unusual stickiness, or strong off-odors may be more meaningful warning signs than color changes alone.\n\n\n\nBaked Goods: Freshness and Safety Are Not the Same Thing\n\nMoving from highly perishable proteins to baked goods highlights an important distinction: quality decline and spoilage are not always the same thing. Bread, bagels, pastries, and other baked items naturally lose moisture over time, causing them to become firmer or less enjoyable to eat. Staleness may affect the eating experience, but it doesn’t automatically indicate a safety concern. A baguette that has lost its crusty exterior or a muffin that feels slightly dry is often still safe to eat.\n\n\n\nThat distinction becomes especially important in bakery departments, where quality often declines long before safety becomes a concern. Visible mold remains one of the clearest indicators that a product should no longer be consumed. Short of that, many baked goods remain perfectly edible even after they have passed their peak quality window, making this category a useful example of why freshness and safety should not be treated as interchangeable concepts.\n\n\n\nPrepared Foods: Time Windows Help Guide Freshness\n\nPrepared foods introduce a different freshness challenge because they often combine multiple ingredients, each with its own shelf life. Restaurants, grocery stores, and foodservice operators rely heavily on production dates, holding times, and labeling procedures to help ensure products are served within established quality and safety standards. Even with those controls in place, the food itself can provide important clues.\n\n\n\nPrepared foods that have developed unusual discoloration, excessive liquid separation, or unexpected texture changes may indicate spoilage. A sandwich with wilted lettuce, a grain bowl that has lost some texture, or a prepared salad that’s no longer at peak quality presents a different situation. Freshness can decline before a product becomes unsafe, which is why timing and sensory evaluation work together when assessing prepared foods.\n\n\n\nHow to Keep Food Fresh Longer: 5 Tips to Prolong Freshness\n\nThe signs of freshness may vary from one food category to the next, but the underlying goal remains the same. Preserving quality for as long as possible, and ensuring good food reaches customers, is always the aim. Businesses that prioritize food freshness through strong storage and inventory practices are often better positioned to reduce waste while maximizing the value of their products. Here’s how to do just that:\n\n\n\nMaintain proper storage temperatures. Consistent refrigeration helps slow quality decline and preserve freshness across dairy, meat, seafood, prepared foods, and many produce items. Regular temperature monitoring can also help identify issues before they affect product quality.\n\nUse packaging that protects product quality. Appropriate packaging helps shield food from excess moisture, air exposure, and other environmental factors that can accelerate deterioration. Storage methods should also be tailored to the needs of each product category.\n\nFollow first-in, first-out (FIFO) inventory practices. Rotating older inventory to the front and newer inventory to the back helps ensure products are sold or used in the intended order, reducing the likelihood of items being overlooked until quality declines.\n\nIdentify products before they reach their quality threshold. Monitoring inventory proactively creates more opportunities to sell, donate, or otherwise recover value from food while it still meets quality expectations.\n\nTrain employees on freshness indicators, not just date labels. Teams that understand the difference between normal aging and true spoilage are better equipped to make informed decisions to reduce unnecessary waste.\n\n\n\nHow Too Good To Go Helps Retailers Recover Value from Surplus Food\n\nEven with strong inventory management practices in place, surplus food is sometimes unavoidable. Demand can shift unexpectedly, and products may sell more slowly than anticipated, but quality windows continue to narrow with each passing day. Many foods maintain their food freshness and remain enjoyable as they approach their Best By or Enjoy By dates, yet businesses often struggle to sell that inventory before it loses value.\n\n\n\nToo Good To Go helps address that challenge through Surprise Bags. Grocery stores, bakeries, restaurants, and other food retail businesses can recover value from inventory with a limited remaining shelf life, while consumers discover surplus food through the app-based Too Good To Go marketplace. Participating businesses create their own Surprise Bags using surplus inventory that still meets their quality and food safety standards.\n\n\n\nUnlock the Opportunity Hidden Inside Food Freshness Windows\n\nThe conversation around food waste often begins with what gets thrown away, but a more useful question is why it gets thrown away in the first place. In many cases, the answer comes back to how freshness is understood throughout the supply chain. A softened peach, a slightly stale loaf of bread, and a package of beef with minor discoloration all tell very different stories, but they’re also safe to eat.\n\n\n\nToo Good To Go helps businesses capture value from these types of food that still have something left to offer. By creating a simple way to sell surplus food before quality declines further, Surprise Bags help transform limited shelf life from a liability into a chance to recover value. Learn how Too Good To Go can help your business reduce food waste and make the most of every freshness window.\n\n\n\n\n\nRecover more value from surplus food\n\n\n\n\n\nFAQ About Food Freshness\n\nWhat does food freshness actually mean?\n\nFood freshness refers to a product’s overall quality and condition, including factors such as appearance, texture, smell, and flavor. While freshness naturally changes over time, a product does not automatically become unsafe the moment it reaches a printed date. Different foods age differently, which is why freshness must be evaluated within the context of each category.\n\n\n\nAre Best By dates the same as expiration dates?\n\nNo. Most date labels are intended to communicate quality rather than safety. Labels such as Best By, Enjoy By, and Sell By generally indicate when a product is expected to deliver its best flavor, texture, or eating experience. Many foods remain safe and enjoyable beyond those dates when stored properly.\n\n\n\nWhy do consumers often throw away food that is still edible?\n\nMany consumers rely heavily on date labels or visual appearance when making decisions about food. Cosmetic imperfections, slight texture changes, or approaching quality dates are often mistaken for signs of spoilage. As a result, perfectly edible food is frequently discarded before it truly needs to be.\n\n\n\nHow can food businesses reduce waste caused by freshness concerns?\n\nBusinesses can reduce unnecessary waste by monitoring inventory proactively, maintaining proper storage conditions, rotating stock using first-in, first-out practices, and training employees to recognize the difference between normal aging and true spoilage. Evaluating products based on their actual condition rather than dates alone can also help identify opportunities to recover value.\n\n\n\nWhy is food freshness assessed differently across food categories?\n\nEach category ages in its own way. Produce may develop cosmetic imperfections while remaining perfectly edible, dairy products often show changes in smell or texture, and baked goods can become stale long before they become unsafe. Understanding category-specific indicators helps businesses make more informed decisions about inventory.\n\n\n\nWhat is Too Good To Go?\n\nToo Good To Go is a surplus food marketplace that helps food businesses reduce waste by connecting consumers with leftover items that still meet quality and food safety standards. Through the app, consumers can purchase Surprise Bags containing unsold food from participating grocery stores, bakeries, restaurants, and other food retailers.\n\n\n\nHow do Surprise Bags help businesses recover value from surplus food?\n\nSurprise Bags provide businesses with an additional way to sell food that has a limited remaining shelf life but is still fresh and enjoyable to eat. Rather than allowing that inventory to go unsold, participating businesses can package eligible surplus food into discounted Surprise Bags and offer them through the Too Good To Go marketplace, helping reduce waste while generating incremental revenue.",{"_type":3054,"alt":3101,"asset":3102,"fit":25},"Fresh produce in Surprise Bag",{"_ref":3103,"_type":13},"image-dd082d7e7126a1427dfe2e3a8cf3c4c7e036d085-2500x1667-jpg","2026-07-16T16:17:34.970Z","\u002Fblog\u002Ffood-freshness-explained","Food Freshness Explained: What It Means for Different Types of Food",{"_createdAt":3108,"_id":3109,"categories":8,"content":3110,"excerpt":8,"file":8,"image":3111,"language":38,"migrated":8,"pretitle":3061,"publishedAt":3115,"slug":3116,"title":3117,"updatedAt":8,"url":8},"2026-07-14T15:11:56Z","f352f718-7c5e-4134-b77c-ad31292f58b7","A multi-unit franchise may have predictive analytics to help with restaurant demand forecasting. An independent operator, on the other hand, is often relying on last week’s sales, the local weather report, and a little bit of luck. That doesn’t mean effective forecasting is out of reach. With the right information and a simple process, even small teams can make more informed decisions about inventory levels and staffing needs.\n\n\n\nAfter all, most operators already have access to the information they need. The next step is turning that data into a repeatable routine. Luckily, a few practical adjustments can help reduce weekly food waste and protect already-thin profit margins without adding unnecessary complexity. Let’s explore how independent restaurant operators can build a reliable forecasting system without expensive software or enterprise-level tools.\n\n\n\nWhat is Restaurant Demand Forecasting?\n\nRestaurant demand forecasting is the process of estimating how much food, inventory, and labor you’ll need based on expected sales. The goal is simple: have enough ingredients and staff on hand to serve customers without overbuying or overpreparing. That may sound straightforward, but restaurants face unique forecasting challenges.\n\n\n\nIn many ways, restaurant demand forecasting and retail demand forecasting share the same objective of matching supply to demand. The difference is that restaurants are usually working with highly perishable inventory, changing menus, and tighter service windows. A retailer may have weeks or months to sell excess inventory. In contrast, a restaurant often has days or even hours before surplus goes to waste.\n\n\n\nThat’s why forecasting matters. Even small improvements can help operators make smarter decisions throughout the week, including:\n\n\n\nPreventing over-ordering. Ordering too much inventory ties up cash and increases the likelihood that ingredients will spoil before they’re used.\n\nReducing food waste. Every surplus item that spoils or loses freshness represents lost value that has already been purchased, stored, and prepared.\n\nAvoiding stockouts. Running out of staple ingredients or popular menu items can lead to missed sales and frustrated customers who may not return.\n\nProtecting margins. Better demand forecasting helps operators balance purchasing, preparation, and labor costs without sacrificing service quality.\n\n\n\nThose benefits can add up quickly in an industry known for thin margins. Full-service restaurants typically operate within a 3% to 5% profit margin range, while fast-casual concepts often fall between 6% and 9%. When profitability is measured in single digits, even modest forecasting improvements can make a meaningful difference.\n\n\n\nThe Realities of Restaurant Demand Forecasting for Independent Operators\n\nEffective restaurant demand forecasting can be more difficult when resources are limited. Large restaurant groups may rely on sophisticated forecasting platforms, but many independent operators are still making purchasing decisions with spreadsheets and experience. Smaller teams rarely have dedicated analysts or specialized software, and tighter purchasing budgets can leave less room for error when ordering inventory from week to week.\n\n\n\nNot to mention, demand can shift quickly, even with a solid routine in place.\n\n\n\nA rainy weekend, a nearby sporting event, or the start of tourist season can change customer traffic patterns with little warning. Some weeks bring packed dining rooms, while others fall short of expectations despite looking similar on paper. Those variables make forecasting challenging, but they also highlight why having a consistent approach is so valuable. The goal isn’t to predict every shift in demand perfectly; it’s to make better decisions more often.\n\n\n\nWhat Data Should Operators Use for Restaurant Demand Forecasting?\n\nIndependent restaurants often assume they lack the necessary data for demand forecasting. In reality, most operators already collect relevant demand signals through daily operations. Sales reports, inventory records, reservations, and local demand trends can provide more than enough information to make more informed purchasing and staffing decisions. Take a look at the types of data that can fuel restaurant demand forecasting.\n\n\n\nHistorical Sales Data\n\nHistorical sales reports tend to reveal patterns that aren’t obvious during day-to-day operations. Comparing last Thursday’s dinner service to a typical Thursday from the previous month, or even the same period last year, can help operators spot recurring trends and make more confident purchasing decisions. Over time, those patterns can establish a baseline for what “normal” demand looks like throughout the week.\n\n\n\nInventory Usage\n\nSales data tells part of the story, but inventory data helps fill in the gaps. Which ingredients consistently sell through before the end of service? Which ones regularly remain unused at the end of the week? For restaurant demand forecasting, these trends can be just as valuable as sales figures because they reveal where ordering decisions — and cash flow — may be overshooting or falling short of actual demand.\n\n\n\nReservations and Advance Orders\n\nUnlike historical data or inventory usage, reservations and advance orders offer a glimpse into future demand before service begins. A full reservation book, a large catering order, or a private event on the calendar can all influence how much inventory and labor may be needed on a given shift. Reviewing these commitments several days in advance can help operators make more informed decisions before guests arrive.\n\n\n\nLocal Demand Signals\n\nWhile the above data sets are useful, customer traffic doesn’t exist in a vacuum. Weather changes, school schedules, community events, holidays, and nearby sporting events can all influence how many guests walk through the door. Paying attention to these external factors adds helpful context to restaurant demand forecasting, especially when historical sales data alone doesn’t explain sudden increases or declines in demand.\n\n\n\nSimple Tools That Make Restaurant Demand Forecasting Easier\n\nRestaurant demand forecasting becomes much more manageable when you know where each piece of information lives. Rather than hunting through multiple records every week, focus your attention on a handful of sources that make patterns easier to spot. The table below can help you connect each demand signal to the everyday tools that track it.\n\nThe good news? You don’t need to gather every data point at once. Start with the information that is easiest to access — like POS reports or reservation platforms — then layer in demand signals like vendor ordering records and local event calendars. Over time, reviewing these sources together can turn scattered information into a more reliable forecasting routine.\n\n\n\nA 6-Step Restaurant Demand Forecasting Process for Independent Operators\n\nIndependent operators don’t need advanced retail demand forecasting platforms or specialized software to stay ahead. A combination of reliable records and simple spreadsheets can provide enough visibility to make more informed decisions instantly. Here’s how to launch your own restaurant demand forecasting process for accurate inventory and labor in six simple steps.\n\n\n\nStep 1: Review Historical Sales Trends\n\nEvery routine needs a starting point. For restaurant demand forecasting, historical sales trends provide the baseline that everything else builds upon. Review performance from the same day last week, the same period last year, and any recent shifts in customer ordering behavior. Pay close attention to menu items that consistently outperform expectations as well as those that move more slowly. Those patterns can help establish a realistic starting point before making any adjustments.\n\n\n\nStep 2: Account for Upcoming Demand Drivers\n\nWhile historical sales data tells you what happened in the past, restaurant demand forecasting also requires operators to account for what is already on the calendar. Once you have a baseline, look ahead for anything that could influence customer traffic in the days ahead. Consider factors such as:\n\n\n\nReservations\n\nPrivate events\n\nCatering orders\n\nCommunity events\n\nWeather forecasts\n\n\n\nEven a few additional bookings or a well-attended local event, like a county fair or family movie night, can influence purchasing and staffing needs for the week. Weather conditions can affect demand, too. Though pleasant weather may encourage more diners to visit, storms, extreme heat, or heavy snowfall can reduce customer traffic.\n\n\n\nStep 3: Factor in Seasonality\n\nSuccessful restaurant demand forecasting goes beyond weekly fluctuations. Many restaurants experience recurring shifts in customer traffic throughout the year that can influence sales patterns for weeks or months at a time. Holidays, tourist spikes, school schedules, sporting seasons, and annual community events can all affect how busy a restaurant becomes.\n\n\n\nLikewise, ingredient costs may rise or fall depending on seasonal availability. Produce, proteins, and other ingredients move in and out of peak supply throughout the year, and some products may be harder to source during certain seasons. Factoring these trends into purchasing decisions can help operators avoid surprises while maintaining more consistent inventory levels.\n\n\n\nStep 4: Identify the Inventory Most Vulnerable to Waste\n\nOne area where restaurants differ significantly from other businesses is inventory perishability. Retail demand forecasting often focuses on products that can remain on shelves for extended periods, whereas restaurants work with ingredients that have a much shorter freshness window. Identifying the items most vulnerable to waste can help operators prioritize forecasting efforts where they matter most.\n\n\n\nPay particular attention to:\n\nPrepared foods, including soups, sauces, and sides that have limited holding periods under food safety guidelines\n\nProteins, which are among the most expensive inventory items and can create significant losses when overordered\n\nBaked goods, which may lose freshness and quality within a short period even if they remain safe to serve\n\nFresh produce, which can spoil quickly when purchasing levels exceed actual customer demand\n\n\n\nKeeping an eye on these ingredients can make it easier to prevent waste before it becomes a bigger problem. If certain items regularly end up unused or expire before they’re sold, that’s usually a sign that purchasing levels need to be adjusted. Paying closer attention to your most perishable inventory can help reduce food waste, improve margins, and make day-to-day inventory management a little less stressful.\n\n\n\nStep 5: Refine Your Purchasing Decisions Weekly\n\nLike inventory management, forecasting works best as an ongoing process rather than a one-time exercise. Effective restaurant demand forecasting requires regular adjustments based on real-world results. At the end of each week, review what sold quickly, what remained untouched, what sold out before service ended. Those insights can help fine-tune future purchasing decisions and improve forecasting accuracy over time.\n\n\n\nStep 6: Schedule Staff Based on Expected Demand\n\nForecasting isn’t just about food orders. Strong restaurant demand forecasting can also help align staffing levels with expected customer traffic. Anticipating busy periods may make it easier to schedule enough team members to maintain service quality while avoiding unnecessary labor costs during slower shifts. Cross-training employees can add flexibility as well, allowing your staff to adapt when demand is higher or lower than expected.\n\n\n\nCommon Restaurant Demand Forecasting Mistakes to Avoid\n\nAbove all, remember that forecasting doesn’t need to be perfect. It just needs to be more reliable than guessing. Even the most consistent restaurant demand forecasting routine will occasionally miss the mark, especially when customer traffic shifts unexpectedly. Still, avoiding a few common mistakes can improve accuracy in the long run and help operators make more confident purchasing and staffing decisions.\n\n\n\nRelying only on gut instinct: Experience matters, but it works best when paired with real sales, inventory, and reservation data. Use historical trends to validate assumptions before placing orders.\n\nIgnoring seasonal trends: Customer purchasing habits and ingredient availability often change throughout the year. Looking only at recent performance can create blind spots during busy or slower seasons.\n\nOrdering for best-case scenarios: Planning for a packed dining room every night can leave restaurants with excess inventory when traffic falls short of expectations. Build forecasts around realistic demand, not ideal outcomes.\n\nFailing to track waste: Surplus inventory can reveal just as much as sales reports. Continuously monitoring what goes to waste can help identify where ordering quantities need adjustment.\n\nTreating forecasting as a once-a-month task: Demand forecasting is an ongoing process. Reviewing results regularly helps identify patterns, refine purchasing decisions, and adapt to changing conditions.\n\n\n\nHow Too Good To Go Helps Restaurants Manage Forecasting Gaps\n\nCustomer traffic fluctuates, plans change, and unexpected slow periods happen. Routine restaurant demand forecasting can reduce waste, but there will still be times when ingredients or prepared foods remain unsold at the end of service. That’s where a surplus food marketplace like Too Good To Go can help.\n\n\n\nRather than relying on one-off markdowns, restaurants can bundle surplus food into Surprise Bags and offer them at a discounted price through the Too Good To Go app. Operators set their own pickup windows, giving nearby customers an easy way to discover and purchase surplus food that might otherwise go unused. In the process, restaurants can recover value from inventory they’ve already purchased and prepared.\n\n\n\nSo, while forecasting helps you make smarter purchasing decisions upfront, Too Good To Go provides another outlet when demand doesn’t unfold exactly as expected. The result is a low-lift way to generate revenue from surplus food. In other words, it works for you, even when demand forecasts don’t.\n\n\n\nBetter Restaurant Demand Forecasting Starts with Better Habits\n\nRestaurant demand forecasting doesn’t require enterprise software or predictive analytics. You can build effective forecasting habits using the same POS reports, inventory tracking spreadsheets, and reservation platforms you’ve been relying on already. Still, no forecast is perfect. That’s why many operators pair stronger forecasting habits with surplus recovery tools like Too Good To Go.\n\n\n\nTogether, the duo can help restaurants reduce waste, protect margins, and make inventory management more profitable. Are you ready to recover more value from surplus food? Learn how Too Good To Go helps restaurants turn excess inventory into additional revenue.\n\n\n\n\n\nStart recovering surplus food revenue\n\n\n\n\n\nFAQs About Restaurant Demand Forecasting\n\nHow far ahead should restaurants forecast demand?\n\nMost independent restaurants benefit from forecasting at least one week ahead while reviewing upcoming reservations, events, and inventory needs. Longer-term forecasts can also be useful for planning around holidays, tourist seasons, and recurring community events that may affect customer traffic.\n\n\n\nWhat is the most important data for restaurant demand forecasting?\n\nHistorical sales data is often the best starting point because it reveals recurring patterns in customer behavior. Inventory usage, reservations, advance orders, and local demand signals can then add context and help operators make more informed purchasing decisions.\n\n\n\nHow often should restaurants update their forecasts?\n\nRestaurant demand forecasting works best as an ongoing process rather than a one-time exercise. Reviewing results weekly can help operators identify changing trends and adjust order quantities to improve forecasting accuracy over time.\n\n\n\nWhy do restaurants struggle with forecasting accuracy?\n\nCustomer traffic can change unexpectedly due to weather, local events, seasonal shifts, and other factors outside a restaurant’s control. For these reasons, forecasting isn’t about eliminating uncertainty entirely; it’s about making better decisions based on the information available.\n\n\n\nWhat inventory items should restaurants monitor most closely?\n\nRestaurants should pay particular attention to highly perishable items such as fresh produce, proteins, prepared foods, and baked goods. These products often carry the greatest risk of spoilage when purchasing levels exceed actual demand.\n\n\n\nHow does Too Good To Go help restaurants reduce food waste?\n\nToo Good To Go provides another outlet for surplus inventory when demand doesn't unfold exactly as expected. Restaurants set their own pickup times, list available Surprise Bags, and give nearby customers an opportunity to purchase excess food that might otherwise go unsold.\n\n\n\nWhat are Too Good To Go Surprise Bags?\n\nSurprise Bags allow restaurants to bundle surplus food into a single discounted offering for local customers. Rather than letting excess inventory go unused, restaurants can recover value from food that remains at the end of service while helping reduce food waste.",{"_type":3054,"alt":3112,"asset":3113,"fit":25},"restaurant manager reviewing demand data",{"_ref":3114,"_type":13},"image-36c4b68505ff22cc856fe3defc39843d7495d431-7112x4784-jpg","2026-07-14T15:33:39.966Z","\u002Fblog\u002Frestaurant-demand-forecasting","Restaurant Demand Forecasting 101: A Practical Guide for Independent Operators",130]