{"id":1169,"date":"2026-03-25T12:44:39","date_gmt":"2026-03-25T11:44:39","guid":{"rendered":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/"},"modified":"2026-06-27T14:46:44","modified_gmt":"2026-06-27T12:46:44","slug":"our-thinking","status":"publish","type":"page","link":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/","title":{"rendered":"Our thinking"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1169\" class=\"elementor elementor-1169\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d3547cd e-con-full e-flex e-con e-parent\" data-id=\"d3547cd\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f7044c3 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"f7044c3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Expert insights, <span>industry news &amp; resources<\/span><\/h1>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f88fea6 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"f88fea6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Explore our latest industry insights, client case studies and consultant-led resources, designed to help your business get ahead.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-26aba2f e-flex e-con-boxed e-con e-parent\" data-id=\"26aba2f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0e738e8 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"0e738e8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Articles &amp; resources<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-53d8cdf elementor-widget elementor-widget-shortcode\" data-id=\"53d8cdf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div id=\"gfi-slider\" class=\"gfi-slider\">\n  <div class=\"gfi-slider__track\"><div class=\"gfi-slide__content\"><a href=\"https:\/\/leyton.majjane.agency\/uk\/news\/james-pullen-joins-leyton-uk-as-business-rates-director\/\" class=\"gfi-slide\"><img decoding=\"async\" class=\"gfi-slide__image\" src=\"https:\/\/leyton.majjane.agency\/wp-content\/blogs.dir\/9\/files\/2026\/02\/pexels-negativespace-34092-1024x683.webp\" alt=\"James Pullen joins Leyton UK as Business Rates Director\" loading=\"lazy\"><div class=\"gfi-slide__overlay\"><div class=\"gfi-slide__top\"><span class=\"gfi-slide__badge\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#f26e21\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"><\/path><polyline points=\"14 2 14 8 20 8\"><\/polyline><line x1=\"16\" y1=\"13\" x2=\"8\" y2=\"13\"><\/line><line x1=\"16\" y1=\"17\" x2=\"8\" y2=\"17\"><\/line><polyline points=\"10 9 9 9 8 9\"><\/polyline><\/svg>News<\/span><\/div><div class=\"gfi-slide__bottom\"><span class=\"gfi-slide__category liquid-glass2\">Energy<\/span><h3 class=\"gfi-slide__title\">James Pullen joins Leyton UK as Business Rates Director<\/h3><p class=\"gfi-slide__excerpt\">Leyton UK strengthens its Business Rates advisory service with new director hire, providing guidance for landlords and occupiers looking to reduce their rates liabilities James...<\/p><div class=\"gfi-slide__footer\"><span class=\"gfi-slide__cta liquid-glass2\">View Resource <span class=\"gfi-slide__cta-icon\"><svg viewBox=\"0 0 14 14\" fill=\"none\"><path d=\"M3 7h8m0 0L7.5 3.5M11 7l-3.5 3.5\" stroke=\"#333\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/span><\/span><span class=\"gfi-slide__time\">3 min read<\/span><\/div><\/div><\/div><\/a><\/div><\/div>\n  <button class=\"gfi-slider__arrow gfi-slider__arrow--prev\" aria-label=\"Previous slide\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"22\" height=\"21\" viewBox=\"0 0 22 21\" fill=\"none\"><path d=\"M13.6875 5.25L8.2125 10.5L13.6875 15.75\" stroke=\"#EC6839\" stroke-width=\"1.75\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/svg>\n  <\/button>\n  <button class=\"gfi-slider__arrow gfi-slider__arrow--next\" aria-label=\"Next slide\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"22\" height=\"21\" viewBox=\"0 0 22 21\" fill=\"none\"><path d=\"M8.21289 15.75L13.6879 10.5L8.21289 5.25\" stroke=\"#EC6839\" stroke-width=\"1.75\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/svg>\n  <\/button>\n<\/div>\n\n<!-- DOTS: outside the slider, below it -->\n<div class=\"gfi-slider__dots\" id=\"gfi-dots\"><\/div>\n\n<style>\n.gfi-slider {\n    margin-inline: auto;\n    width: calc(100% - 140px);\n    overflow: hidden;\n    border-radius: 24px;\n    background: #e8ecf0;\n    max-height: 550px;\n    max-width: 1204px;\n}\n\n.gfi-slider__track {\n  display: flex;\n  transition: transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);\n  will-change: transform;\n}\n.gfi-slide__content {\n  min-width: 100%;\n  padding-inline: 10px;\n  background-color: white;\n  overflow: hidden;\n}\n.gfi-slide {\n  min-width: 100%;\n  position: relative;\n  overflow: hidden;\n  display: block;\n  text-decoration: none;\n  color: inherit;\n  border-radius: 25px;\n}\n\n.gfi-slide__image {\n  width: 100%;\n  object-fit: cover;\n  display: block;\n  height: 550px !important;\n}\n\n.gfi-slide__image--empty {\n  width: 100%;\n  height: 550px;\n  background: linear-gradient(135deg, #1a3a5c 0%, #0d2b4e 100%);\n}\n\n.gfi-slide__overlay {\n  position: absolute;\n  inset: 0;\n  background: linear-gradient(180deg, transparent 30%, rgba(0, 0, 0, 0.85) 100%);\n  display: flex;\n  flex-direction: column;\n  justify-content: space-between;\n  padding: 32px 100px 39px 100px;\n}\n\n.gfi-slide__top { display: flex; align-items: flex-start; }\n\n.gfi-slide__badge {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n  background: #fff;\n  border-radius: 24px;\n  padding: 6px 12px;\n  color: #062B49;\n  font-size: 12px;\n  font-weight: 600;\n  line-height: 1rem;\n  letter-spacing: 0.559px;\n  text-transform: uppercase;\n}\n\n.gfi-slide__bottom { display: flex; flex-direction: column; }\n\n.gfi-slide__category {\n  display: inline-block;\n  background: rgba(255, 255, 255, 0.15);\n  border: 1px solid rgba(255, 255, 255, 0.25);\n  backdrop-filter: blur(6px);\n  -webkit-backdrop-filter: blur(6px);\n  color: #FFF;\n  font-family: Montserrat;\n  font-size: 1rem;\n  font-weight: 500;\n  line-height: 21.781px;\n  letter-spacing: 0.66px;\n  padding: 8px 18px;\n  border-radius: 24px;\n  width: fit-content;\n  margin-bottom: 16px;\n}\n\n.gfi-slide__title {\n  font: 700 36px;\n  color: #fff !important;\n  margin: 0 0 12px;\n  max-width: 700px;\n}\n\n.gfi-slide__excerpt {\n  font: 400 15px;\n  color: rgba(255, 255, 255, 0.85);\n  margin: 0 0 24px;\n  max-width: 650px;\n  display: -webkit-box;\n  -webkit-line-clamp: 2;\n  -webkit-box-orient: vertical;\n  overflow: hidden;\n}\n\n.gfi-slide__footer { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }\n\n.gfi-slide__cta {\n  display: inline-flex;\n  align-items: center;\n  gap: 12px;\n  color: #fff;\n  border-radius: 4294.879px;\n  background: rgba(217, 217, 217, 0.24);\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n  padding: 6px 6px 6px 20px;\n  color: #FFF;\n  font-family: Montserrat;\n  font-size: 0.9rem;\n  font-weight: 600;\n  line-height: 25.973px;\n  transition: background 0.3s ease;\n}\n\n.gfi-slide__cta:hover {\n  background: rgba(0, 0, 0, 0.7);\n}\n\n.gfi-slide__cta-icon {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 32px;\n  height: 32px;\n  background: #fff;\n  border-radius: 50%;\n  rotate: -25deg;\n  transition: rotate .4s;\n}\n\n.gfi-slide__cta:hover .gfi-slide__cta-icon {\n  rotate: 0deg;\n}\n\n.gfi-slide__cta-icon svg { width: 14px; height: 14px; stroke: #333; }\n\n.gfi-slide__time {\n    color: #FFF;\n    font-family: \"Montserrat\";\n    font-size: 14px;\n    line-height: 21.781px;\n    letter-spacing: 0.66px;\n}\n\n\/* Arrows *\/\n.gfi-slider__arrow {\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  z-index: 5;\n  border-radius: 50%;\n  background: rgba(255, 255, 255, 0.2);\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);\n  border: none;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 44px;\n  height: 44px;\n  padding: 0;\n  transition: background 0.3s ease;\n}\n\n.gfi-slider__arrow:hover, .gfi-slider__arrow:focus {\n  background: rgba(255, 255, 255, 0.35);\n}\n\n.gfi-slider__arrow--prev { left: 0px; }\n.gfi-slider__arrow--next { right: 0px; }\n\n.gfi-slider--loading {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  height: 550px;\n}\n\n.gfi-slider__loader {\n  width: 30px;\n  height: 30px;\n  border: 3px solid #d0d5db;\n  border-top-color: #0078d4;\n  border-radius: 50%;\n  animation: gfi-spin 0.6s linear infinite;\n}\n\n@keyframes gfi-spin { to { transform: rotate(360deg); } }\n\n\/* Dots *\/\n.gfi-slider__dots {\n    display: none;\n    justify-content: center;\n    align-items: center;\n    gap: 3px;\n    position: absolute;\n    bottom: 30px;\n    transform: translateX(-50%);\n    left: 50%;\n}\n\n.gfi-slider__dot {\n  width: 8px;\n  height: 8px;\n  border-radius: 999px;\n  background:#012D4899;\n  border: none;\n  padding: 0;\n  cursor: pointer;\n  transition: background 0.3s, width 0.3s;\n}\n.gfi-slider__dot:focus, .gfi-slider__dot:hover{\n     background:#012D48;\n}\n\n.gfi-slider__dot.is-active {\n  width: 20px;\n  background: #012D48;\n}\n\n\/* Responsive *\/\n@media (max-width: 768px) {\n  .gfi-slider {\n    width: 100%;\n  }\n  .gfi-slider__track {\n      transition: transform .5s cubic-bezier(0.25, 0.1, 0.25, 1);\n      will-change: transform;\n    }\n\n  .gfi-slide__image,\n  .gfi-slide__image--empty,\n  .gfi-slider--loading { height: 550px; }\n\n  .gfi-slide__title { font-size: 24px; }\n\n  .gfi-slide__overlay { padding: 24px; }\n\n  .gfi-slide__excerpt { display: none; }\n\n  .gfi-slider__arrow {\n    width: 36px;\n    height: 36px;\n    top: auto;\n    bottom: 0;\n  }\n\n  .gfi-slider__arrow--prev { left: 0px; }\n  .gfi-slider__arrow--next { right: 0px; }\n\n  \/* Show dots on mobile *\/\n  .gfi-slider__dots {\n    display: flex;\n  }\n}\n<\/style>\n\n<script>\n(function () {\n  'use strict';\n\n  var slider         = document.getElementById('gfi-slider');\n  if (!slider) return;\n  var track          = slider.querySelector('.gfi-slider__track');\n  var prevBtn        = slider.querySelector('.gfi-slider__arrow--prev');\n  var nextBtn        = slider.querySelector('.gfi-slider__arrow--next');\n  var dotsContainer  = document.getElementById('gfi-dots');\n  var current        = 0, total = 0;\n  var autoPlayTimer  = null;\n  var autoPlayDelay  = 10000;\n  var isTransitioning = false;\n\n  \/* ---------- dots ---------- *\/\n  function buildDots() {\n    dotsContainer.innerHTML = '';\n    for (var i = 0; i < total; i++) {\n      var btn = document.createElement('button');\n      btn.className   = 'gfi-slider__dot' + (i === 0 ? ' is-active' : '');\n      btn.setAttribute('aria-label', 'Go to slide ' + (i + 1));\n      btn.dataset.index = i;\n      btn.addEventListener('click', function () {\n        goTo(parseInt(this.dataset.index));\n        startAutoplay();\n      });\n      dotsContainer.appendChild(btn);\n    }\n  }\n\n  function updateDots() {\n    var dots = dotsContainer.querySelectorAll('.gfi-slider__dot');\n    dots.forEach(function (d, i) {\n      d.classList.toggle('is-active', i === current);\n    });\n  }\n\n  \/* ---------- navigate ----------\n     Real DOM position = index + 1 because slide 0 is a clone of the last slide. *\/\n  function setTrackPosition(pos, animated) {\n    if (!animated) track.style.transition = 'none';\n    else track.style.transition = '';\n    track.style.transform = 'translateX(-' + (pos * 100) + '%)';\n  }\n\n  function goTo(i) {\n    if (isTransitioning) return;\n    isTransitioning = true;\n\n    var domPos = i + 1; \/\/ +1 because of the leading clone\n    setTrackPosition(domPos, true);\n\n    track.addEventListener('transitionend', onTransitionEnd);\n\n    \/\/ Normalise current for the dots (0-indexed against the real slides)\n    if (i < 0) current = total - 1;\n    else if (i >= total) current = 0;\n    else current = i;\n    updateDots();\n  }\n\n  function onTransitionEnd() {\n    track.removeEventListener('transitionend', onTransitionEnd);\n    isTransitioning = false;\n\n    var currentTransform = Math.round(Math.abs(parseFloat(track.style.transform.replace('translateX(', '').replace('%)', ''))) \/ 100);\n\n    if (currentTransform === total + 1) {\n      \/\/ Came from the trailing clone -> jump silently to real slide 1\n      setTrackPosition(1, false);\n      track.getBoundingClientRect();\n    } else if (currentTransform === 0) {\n      \/\/ Came from the leading clone -> jump silently to the real last slide\n      setTrackPosition(total, false);\n      track.getBoundingClientRect();\n    }\n  }\n\n  \/* ---------- autoplay ---------- *\/\n  function startAutoplay() {\n    stopAutoplay();\n    autoPlayTimer = setInterval(function () {\n      goTo(current + 1);\n    }, autoPlayDelay);\n  }\n\n  function stopAutoplay() {\n    if (autoPlayTimer) {\n      clearInterval(autoPlayTimer);\n      autoPlayTimer = null;\n    }\n  }\n\n  \/* ---------- init from server-rendered slides ---------- *\/\n  function init() {\n    var slides = Array.prototype.slice.call(track.querySelectorAll('.gfi-slide__content'));\n    total = slides.length;\n    if (!total) return;\n\n    if (total > 1) {\n      \/\/ Wrap with clones for the seamless infinite loop:\n      \/\/ [clone of last] + [real slides] + [clone of first]\n      var firstClone = slides[0].cloneNode(true);\n      var lastClone  = slides[total - 1].cloneNode(true);\n      track.insertBefore(lastClone, slides[0]);\n      track.appendChild(firstClone);\n\n      current = 0;\n      \/\/ Position on the real first slide (dom index 1) without animation\n      setTrackPosition(1, false);\n      track.getBoundingClientRect(); \/\/ reflow\n\n      buildDots();\n      prevBtn.style.display = '';\n      nextBtn.style.display = '';\n      startAutoplay();\n    } else {\n      \/\/ Single slide: no clones, no controls.\n      setTrackPosition(0, false);\n      prevBtn.style.display = 'none';\n      nextBtn.style.display = 'none';\n    }\n  }\n\n  \/* ---------- events ---------- *\/\n  prevBtn.addEventListener('click', function (e) { e.preventDefault(); goTo(current - 1); startAutoplay(); });\n  nextBtn.addEventListener('click', function (e) { e.preventDefault(); goTo(current + 1); startAutoplay(); });\n\n  var sx = 0, dx = 0, dr = false;\n  track.addEventListener('touchstart', function (e) { sx = e.touches[0].clientX; dr = true; stopAutoplay(); }, { passive: true });\n  track.addEventListener('touchmove',  function (e) { if (dr) dx = e.touches[0].clientX - sx; }, { passive: true });\n  track.addEventListener('touchend',   function () {\n    if (!dr) return;\n    dr = false;\n    if (dx > 50)       goTo(current - 1);\n    else if (dx < -50) goTo(current + 1);\n    dx = 0;\n    startAutoplay();\n  }, { passive: true });\n\n  slider.addEventListener('mouseenter', stopAutoplay);\n  slider.addEventListener('mouseleave', function () { if (total > 1) startAutoplay(); });\n\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', init);\n  else init();\n})();\n<\/script><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5857089 e-flex e-con-boxed e-con e-parent\" data-id=\"5857089\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-05d67bd elementor-widget elementor-widget-html\" data-id=\"05d67bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"gfi-grid\" class=\"gfi-grid\" data-i18n-empty=\"No content found for the selected filters.\" data-i18n-failed=\"Failed to load content.\" data-i18n-allexp=\"All Expertises\" data-i18n-minread=\"min read\" data-i18n-minlisten=\"min listen\">\n  <div class=\"gfi-grid__filters\">\n    <!-- Pills are rendered dynamically from GFI_HUB.cpts (already localized per\n         language). Keep this container empty \u2014 buildPills() fills it. -->\n    <div class=\"gfi-grid__pills\"><\/div>\n    <div class=\"gfi-grid__dropdown-wrap gfi-select\">\n      <select id=\"gfi-tax-filter\" class=\"gfi-grid__dropdown\">\n        <option value=\"0\">All Expertises<\/option>\n      <\/select>\n    <\/div>\n  <\/div>\n\n  <div id=\"gfi-posts\" class=\"gfi-grid__posts\"><\/div>\n  <div id=\"gfi-pagination\" class=\"gfi-grid__pagination\"><\/div>\n<\/div>\n\n<style>\n\/* \u00e2\u00e2 Global\/Base Styles \u00e2\u00e2 *\/\n.gfi-grid {\n  font-family: 'DM Sans', sans-serif;\n  max-width: 1204px;\n  margin: 0 auto;\n}\n\n\/* \u00e2\u00e2 Filters Bar \u00e2\u00e2 *\/\n.gfi-grid__filters {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 16px;\n  padding: 18px 24px;\n  border-radius: 24px;\n  border: 2px solid #E3E5E8;\n  background: linear-gradient(90deg, rgba(10, 92, 131, 0.02) 0%, rgba(10, 92, 131, 0.03) 100%);\n  box-shadow: 6px 8px 18.6px 0 rgba(1, 45, 72, 0.10) inset;\n  margin-bottom: 40px;\n  flex-wrap: wrap;\n}\n\n.gfi-grid__pills {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  flex-wrap: wrap;\n}\n\n.gfi-grid__pill {\n  font: 600 13px\/1 'DM Sans', sans-serif;\n  padding: 10px 20px;\n  border-radius: 50px;\n  border: 1px solid #0d2b4e;\n  background: transparent;\n  color: #0d2b4e;\n  cursor: pointer;\n  white-space: nowrap;\n  transition: all 0.2s ease;\n}\n\n.gfi-grid__pill:hover, .gfi-grid__pill:focus {\n  background: #0d2b4e;\n  color: #fff;\n}\n\n.gfi-grid__pill--active {\n  background: #0d2b4e;\n  color: #fff;\n  border-color: #0d2b4e;\n}\n\n\/* \u00e2\u00e2 Dropdown \u00e2\u00e2 *\/\n.gfi-grid__dropdown-wrap {\n  position: relative;\n  flex-shrink: 0;\n}\n\n.gfi-grid__dropdown {\n  font: 600 13px\/1 'DM Sans', sans-serif;\n  padding: 12px 40px 12px 20px;\n  border-radius: 50px;\n  border: none;\n  background: #0d2b4e;\n  color: #fff;\n  cursor: pointer;\n  appearance: none;\n  -webkit-appearance: none;\n  background-image: url(\"data:image\/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'\/%3E%3C\/svg%3E\");\n  background-repeat: no-repeat;\n  background-position: right 16px center;\n  max-width: 210px;\n}\n\n.gfi-grid__dropdown:focus {\n  outline: 2px solid #0078d4;\n  outline-offset: 2px;\n}\n\n\n\/* \u00e2\u00e2 Custom Select Override \u00e2\u00e2 *\/\n.gfi-grid .gfi-select {\n  position: relative;\n  width: auto;\n  max-width: fit-content;\n  user-select: none;\n  flex-shrink: 0;\n}\n\n\/* Hide native select, keep it accessible for JS *\/\n.gfi-grid .gfi-select select {\n  position: absolute;\n  width: 1px; height: 1px;\n  padding: 0; margin: -1px;\n  overflow: hidden;\n  clip: rect(0, 0, 0, 0);\n  white-space: nowrap;\n  border: 0;\n  opacity: 0;\n  pointer-events: none;\n}\n\n.gfi-select__trigger {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 10px;\n  padding: 10px 16px 10px 20px;\n  border-radius: 50px;\n  border: none;\n  background: #0d2b4e;\n  color: #fff;\n  font: 600 13px\/1 'DM Sans', sans-serif;\n  cursor: pointer;\n  white-space: nowrap;\n  transition: background 0.2s ease;\n}\n\n.gfi-select__trigger:hover,\n.gfi-select__trigger:focus {\n  background: #0a2240;\n  outline: none;\n}\n\n.gfi-select__chevron {\n  width: 8px; height: 8px;\n  border-right: 2px solid #fff;\n  border-bottom: 2px solid #fff;\n  transform: rotate(45deg);\n  margin-top: -3px;\n  transition: transform 0.25s ease;\n  flex-shrink: 0;\n}\n\n.gfi-select.is-open .gfi-select__chevron {\n  transform: rotate(-135deg);\n  margin-top: 3px;\n}\n\n.gfi-select__list {\n  position: absolute;\n  top: calc(100% + 8px);\n  left: 0; right: 0;\n  background: #fff;\n  border: 1px solid #e5e9ef;\n  border-radius: 14px;\n  box-shadow: 0 12px 32px rgba(10, 37, 64, 0.12);\n  max-height: 280px;\n  overflow-y: auto;\n  padding: 8px 0;\n  margin: 0;\n  list-style: none;\n  z-index: 999;\n  min-width: 200px;\n  \/* Animate in *\/\n  opacity: 0;\n  transform: translateY(-6px);\n  pointer-events: none;\n  transition: opacity 0.18s ease, transform 0.18s ease;\n}\n\n.gfi-select.is-open .gfi-select__list {\n  opacity: 1;\n  transform: translateY(0);\n  pointer-events: auto;\n  padding: 10px 7px;\n}\n\n.gfi-select__label{\n    margin-right: 20px;\n}\n\n.gfi-select__list li {\n  padding: 10px 20px;\n  cursor: pointer;\n  font: 500 13px\/1.4 'Montserrat', sans-serif;\n  color: #0d2b4e;\n  transition: background 0.15s ease;\n}\n\n.gfi-select__list li:hover,\n.gfi-select__list li.is-active {\n  background: #012D4812;\n  color: #0d2b4e;\n  border-radius: 13px;\n}\n\n\/* Active item gets accent color *\/\n.gfi-select__list li.is-active {\n  font-weight: 600;\n}\n\n\/* \u00e2\u00e2 Mobile override \u00e2\u00e2 *\/\n@media (max-width: 768px) {\n  .gfi-grid .gfi-select {\n    width: 100%;\n    max-width: 100%;\n  }\n  .gfi-select__trigger {\n    justify-content: center;\n  }\n  .gfi-select__list {\n    left: 0; right: 0;\n  }\n}\n\n\/* \u00e2\u00e2 Posts Grid \u00e2\u00e2 *\/\n.gfi-grid__posts {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 32px;\n  min-height: 200px;\n}\n\n@media (max-width: 768px) {\n  .gfi-grid__posts {\n    padding-inline:  1rem;\n  }\n}\n\n\/* \u00e2\u00e2 Post Card \u00e2\u00e2 *\/\n.gfi-card {\n  display: flex;\n  flex-direction: column;\n  background: #fff;\n  border: 1px solid #eef1f4;\n  border-radius: 20px;\n  overflow: hidden;\n  text-decoration: none;\n  color: inherit;\n  box-shadow: 0 4px 14px rgba(0,0,0,0.02);\n  transition: transform 0.3s ease, box-shadow 0.3s ease;\n}\n\n.gfi-card:hover {\n  transform: translateY(-6px);\n  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);\n}\n\n\/* \u00e2\u00e2 Card Image \u00e2\u00e2 *\/\n.gfi-card__image-wrap {\n  position: relative;\n  width: 100%;\n  padding-top: 66%;\n  background: #f7f9fa;\n  overflow: hidden;\n  background-image: linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%, #eee), linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%, #eee);\n  background-size: 20px 20px;\n  background-position: 0 0, 10px 10px;\n}\n\n.gfi-card__image {\n  position: absolute;\n  inset: 0;\n  width: 100%;\n  height: 100% !important;\n  object-fit: cover;\n  transition: transform 0.4s ease;\n}\n\n.gfi-card:hover .gfi-card__image {\n  transform: scale(1.04);\n}\n\n.gfi-card__type-badge {\n  position: absolute;\n  top: 16px;\n  left: 16px;\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  background: #fff;\n  color: #062B49;\n  font: 700 11px 'Montserrat', sans-serif;\n  padding: 6px 12px;\n  border-radius: 20px;\n  text-transform: uppercase;\n  \/*letter-spacing: 0.5px;*\/\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1);\n}\n\n.gfi-card__type-badge svg {\n  width: 12px;\n  height: 12px;\n  stroke: #f26e21;\n}\n\n\/* \u00e2\u00e2 Card Body \u00e2\u00e2 *\/\n.gfi-card__body {\n  display: flex;\n  flex-direction: column;\n  flex: 1;\n  padding: 24px;\n  position: relative;\n}\n\n.gfi-card__meta {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 12px;\n  margin-bottom: 16px;\n}\n\n.gfi-card__category {\n    color: #EC6839;\n    font-size: 12px;\n    font-weight: 600;\n    line-height: 16px;\n}\n\n.gfi-card__date {\n    color: #6E7B87;\n    font-size: 10px;\n    font-weight: 600;\n    line-height: 16px;\n}\n\n.gfi-card__title {\n  font: 700 20px\/1.3 'DM Sans', sans-serif;\n  color: #0d2b4e;\n  margin: 0 0 24px;\n  display: -webkit-box;\n  -webkit-line-clamp: 2;\n  -webkit-box-orient: vertical;\n  overflow: hidden;\n}\n\n.gfi-card__time {\n    margin-top: auto;\n    padding-top: 16px;\n    border-top: 1px solid #E2E8F0;\n    color: #6E7B87;\n    font-size: 10px;\n    font-weight: 600;\n    line-height: 16px;\n}\n\n\/* \u00e2\u00e2 Fl\u00c3\u00a8che hover \u00e2\u00e2 *\/\n.gfi-card__arrow {\n  position: absolute;\n  bottom: 15px;\n  right: 24px;\n  width: 32px;\n  height: 32px;\n  \/*background: #f26e21;*\/\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  opacity: 0;\n  transform: translateX(-8px);\n  transition: opacity 0.3s ease, transform 0.3s ease;\n}\n\n.gfi-card:hover .gfi-card__arrow {\n  opacity: 1;\n  transform: translateX(0);\n}\n\n.gfi-card__arrow svg {\n  width: 14px;\n  height: 14px;\n}\n.gfi-card__arrow svg path{\n  stroke:#EC6839;\n}\n\n\n\/* \u00e2\u00e2 Podcast play icon \u00e2\u00e2 *\/\n.gfi-card__play {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  transform: translate(-50%, -50%);\n  width: 48px;\n  height: 48px;\n  background: rgba(255, 255, 255, 0.9);\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);\n}\n\n.gfi-card__play svg {\n  width: 18px;\n  height: 18px;\n  margin-left: 2px;\n}\n\n\/* \u00e2\u00e2 Pagination \u00e2\u00e2 *\/\n.gfi-grid__pagination {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 12px;\n  margin-top: 50px;\n}\n\n.gfi-grid__page {\n  font: 600 14px\/1 'DM Sans', sans-serif;\n  width: 40px;\n  height: 40px;\n  border-radius: 8px;\n  border: 1px solid #0d2b4e;\n  background: #fff;\n  color: #0d2b4e;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  transition: all 0.2s ease;\n}\n\n.gfi-grid__page:hover:not(:disabled), .gfi-grid__page:focus:not(:disabled) {\n  background: #0d2b4e;\n  color: #fff;\n}\n\n.gfi-grid__page--active {\n  background: #0d2b4e;\n  color: #fff;\n  border-color: #0d2b4e;\n}\n\n.gfi-grid__page--arrow {\n  background: #0d2b4e;\n  padding: 0;\n  color: #fff;\n}\n\n.gfi-grid__page--dots {\n  border: none;\n  background: transparent;\n  cursor: default;\n  color: #0d2b4e;\n}\n\n.gfi-grid__page--arrow:disabled {\n  background: #f0f2f5;\n  color: #a0aab5;\n  border-color: #e2e6ea;\n  cursor: default;\n}\n\n\/* \u00e2\u00e2 Loading \u00e2\u00e2 *\/\n.gfi-grid__loading {\n  grid-column: 1 \/ -1;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  padding: 80px 0;\n}\n\n.gfi-grid__loader {\n  width: 36px;\n  height: 36px;\n  border: 3px solid #e0e0e0;\n  border-top-color: #f26e21;\n  border-radius: 50%;\n  animation: gfi-spin2 0.6s linear infinite;\n}\n\n@keyframes gfi-spin2 { to { transform: rotate(360deg); } }\n\n\/* \u00e2\u00e2 Empty State \u00e2\u00e2 *\/\n.gfi-grid__empty {\n  grid-column: 1 \/ -1;\n  text-align: center;\n  padding: 80px 20px;\n  font: 400 16px\/1.5 'DM Sans', sans-serif;\n  color: #8a929a;\n}\n\n\/* \u00e2\u00e2 Responsive \u00e2\u00e2 *\/\n@media (max-width: 1024px) {\n  .gfi-grid__posts { grid-template-columns: repeat(2, 1fr); gap: 24px; }\n  .gfi-grid__filters { padding: 32px; }\n}\n@media (max-width: 768px) {\n    .gfi-grid__filters {\n        border-radius: 20px;\n        padding: 16px;\n        gap: 16px;\n        flex-direction: column;\n        align-items: stretch;\n    }\n    .gfi-grid__pills {\n        gap: 8px;\n        justify-content: center;\n    }\n    .gfi-grid__pill {\n        font-size: 12px;\n        padding: 8px 16px;\n    }\n    .gfi-grid__posts {\n        grid-template-columns: 1fr;\n        gap: 20px;\n    }\n    .gfi-grid__dropdown-wrap {\n        width: 100%;\n        display: flex !important;\n        justify-content: center !important;\n    }\n    .gfi-grid__dropdown {\n        width: auto !important;\n        text-align: center;\n        background-position: right 5% center;\n    }\n    .gfi-grid__pagination {\n       margin-bottom: 50px;\n    }\n}\n\n@media (max-width: 500.99px) {\n  \/*.gfi-grid__page:not(.gfi-grid__page--active):not(.gfi-grid__page--arrow):not(.gfi-grid__page--dots):not([data-page=\"1\"]):not(:last-of-type) {*\/\n  \/*  display: none;*\/\n  \/*}*\/\n\n  .gfi-grid__page:not(.gfi-grid__page--active):not(.gfi-grid__page--arrow):not(.gfi-grid__page--dots):not([data-page=\"1\"]):not(:nth-last-of-type(2)) {\n    display: none;\n  }\n\n\n\n  .gfi-grid__page{\n      width: 35px;\n    height: 36px;\n  }\n}\n<\/style>\n\n<script>\n(function () {\n  'use strict';\n\n  var state = { cpt: 'all', taxTerm: 0, page: 1 };\n\n  var postsEl      = document.getElementById('gfi-posts');\n  var paginationEl = document.getElementById('gfi-pagination');\n  var taxSelect    = document.getElementById('gfi-tax-filter');\n  var pillsWrap    = document.querySelector('.gfi-grid__pills');\n\n  function waitForConfig(callback) {\n    if (typeof GFI_HUB !== 'undefined') { callback(); }\n    else { setTimeout(function () { waitForConfig(callback); }, 100); }\n  }\n\n  \/\/ Build the filter pills from the server-provided, site-aware CPT list so\n  \/\/ labels match each site\/language (e.g. \"Whitepapers\" vs \"Livre blanc\") and\n  \/\/ only CPTs registered on this site are shown. Falls back to the static\n  \/\/ markup already in the DOM if the config is missing for any reason.\n  function buildPills() {\n    if (!GFI_HUB || !Array.isArray(GFI_HUB.cpts) || !GFI_HUB.cpts.length) return;\n    var allLabel = (GFI_HUB.i18n && GFI_HUB.i18n.all) || 'All';\n    var html = '<button class=\"gfi-grid__pill gfi-grid__pill--active\" data-cpt=\"all\">'\n      + allLabel + '<\/button>';\n    GFI_HUB.cpts.forEach(function (c) {\n      html += '<button class=\"gfi-grid__pill\" data-cpt=\"' + c.slug + '\">' + c.label + '<\/button>';\n    });\n    pillsWrap.innerHTML = html;\n  }\n\n  function localizeDropdown() {\n    if (GFI_HUB && GFI_HUB.i18n && GFI_HUB.i18n.allExpertises && taxSelect.options.length) {\n      taxSelect.options[0].textContent = GFI_HUB.i18n.allExpertises;\n    }\n  }\n\n  function getIcon(type) {\n    var baseIcon = '<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\">';\n    switch(type) {\n      case 'article':\n      case 'post':       return baseIcon + '<path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"><\/path><polyline points=\"14 2 14 8 20 8\"><\/polyline><line x1=\"16\" y1=\"13\" x2=\"8\" y2=\"13\"><\/line><line x1=\"16\" y1=\"17\" x2=\"8\" y2=\"17\"><\/line><polyline points=\"10 9 9 9 8 9\"><\/polyline><\/svg>';\n      case 'whitepaper': return baseIcon + '<path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"><\/path><polyline points=\"14 2 14 8 20 8\"><\/polyline><\/svg>';\n      case 'case_client':\n      case 'case_study': return baseIcon + '<polyline points=\"22 12 18 12 15 21 9 3 6 12 2 12\"><\/polyline><\/svg>';\n      case 'news':       return baseIcon + '<path d=\"M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2Zm0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2\"><\/path><path d=\"M18 14h-8\"><\/path><path d=\"M15 18h-5\"><\/path><\/svg>';\n      case 'webinar':    return baseIcon + '<rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\" ry=\"2\"><\/rect><line x1=\"8\" y1=\"21\" x2=\"16\" y2=\"21\"><\/line><line x1=\"12\" y1=\"17\" x2=\"12\" y2=\"21\"><\/line><\/svg>';\n      case 'podcast':    return baseIcon + '<path d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\"><\/path><path d=\"M19 10v2a7 7 0 0 1-14 0v-2\"><\/path><line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\"><\/line><line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\"><\/line><\/svg>';\n      default:           return baseIcon + '<path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"><\/path><\/svg>';\n    }\n  }\n\nfunction fetchPosts() {\n    postsEl.innerHTML = '<div class=\"gfi-grid__loading\"><div class=\"gfi-grid__loader\"><\/div><\/div>';\n    paginationEl.innerHTML = '';\n    var params = 'action=gfi_posts_grid'\n      + '&nonce=' + GFI_HUB.nonce\n      + '&cpt=' + encodeURIComponent(state.cpt)\n      + '&tax_term=' + state.taxTerm\n      + '&page=' + state.page;\n    fetch(GFI_HUB.ajax + '?' + params)\n      .then(function (r) { return r.json(); })\n      .then(function (res) {\n        if (!res.success) { postsEl.innerHTML = ('<div class=\"gfi-grid__empty\">'+document.getElementById('gfi-grid').getAttribute('data-i18n-failed')+'<\/div>'); return; }\n        renderPosts(res.data.posts);\n        renderPagination(res.data.current, res.data.total_pages);\n        \/\/document.getElementById('gfi-grid').scrollIntoView({ behavior: 'smooth', block: 'start' });\n      })\n      .catch(function () { postsEl.innerHTML = ('<div class=\"gfi-grid__empty\">'+document.getElementById('gfi-grid').getAttribute('data-i18n-failed')+'<\/div>'); });\n  }\n\n\/\/   Hind\n\n var wrap = document.querySelector('.gfi-grid__dropdown-wrap.gfi-select');\n  if (!wrap) return;\n\n  var select = wrap.querySelector('select');\n  if (!select) return;\n\n  function initCustomUi() {\n    if (wrap.dataset.enhanced) return;\n    wrap.dataset.enhanced = '1';\n\n\n    select.classList.remove('gfi-grid__dropdown');\n\n    var trigger = document.createElement('div');\n    trigger.className = 'gfi-select__trigger';\n    trigger.setAttribute('role', 'combobox');\n    trigger.setAttribute('aria-haspopup', 'listbox');\n    trigger.setAttribute('aria-expanded', 'false');\n    trigger.setAttribute('tabindex', '0');\n    trigger.innerHTML =\n      '<span class=\"gfi-select__label\"><\/span>' +\n      '<span class=\"gfi-select__chevron\" aria-hidden=\"true\"><\/span>';\n\n    var list = document.createElement('ul');\n    list.className = 'gfi-select__list';\n    list.setAttribute('role', 'listbox');\n\n    var label = trigger.querySelector('.gfi-select__label');\n\n    function buildListItems() {\n      list.innerHTML = '';\n      Array.from(select.options).forEach(function (opt) {\n        var li = document.createElement('li');\n        li.textContent = opt.text;\n        li.dataset.value = opt.value;\n        li.setAttribute('role', 'option');\n        if (opt.value === select.value) li.classList.add('is-active');\n        list.appendChild(li);\n      });\n    }\n\n    function syncLabel() {\n      var opt = select.options[select.selectedIndex];\n      label.textContent = opt ? opt.text : ((typeof GFI_HUB !== 'undefined' && GFI_HUB.i18n && GFI_HUB.i18n.allExpertises) || 'All Expertises');\n    }\n\n    function syncActive() {\n      list.querySelectorAll('li').forEach(function (li) {\n        li.classList.toggle('is-active', li.dataset.value === String(select.value));\n      });\n    }\n\n    buildListItems();\n    syncLabel();\n\n    wrap.appendChild(trigger);\n    wrap.appendChild(list);\n\n    function setOpen(open) {\n      var willOpen = typeof open === 'boolean' ? open : !wrap.classList.contains('is-open');\n      wrap.classList.toggle('is-open', willOpen);\n      trigger.setAttribute('aria-expanded', String(willOpen));\n    }\n\n    trigger.addEventListener('click', function (e) { e.stopPropagation(); setOpen(); });\n    trigger.addEventListener('keydown', function (e) {\n      if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); setOpen(); }\n      if (e.key === 'Escape') setOpen(false);\n    });\n\n    list.addEventListener('click', function (e) {\n      var li = e.target.closest('li');\n      if (!li) return;\n\n      select.value = li.dataset.value;\n      select.dispatchEvent(new Event('change', { bubbles: true }));\n      syncLabel();\n      syncActive();\n      setOpen(false);\n    });\n\n    select.addEventListener('change', function () {\n      syncLabel();\n      syncActive();\n    });\n\n\n    var observer = new MutationObserver(function () {\n      buildListItems();\n      syncLabel();\n      syncActive();\n    });\n    observer.observe(select, { childList: true, subtree: true, characterData: true });\n\n    document.addEventListener('click', function (e) {\n      if (!wrap.contains(e.target)) setOpen(false);\n    });\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', initCustomUi);\n  } else {\n    initCustomUi();\n  }\n\/\/ End Hind\n\n  function fetchCategories() {\n    var params = 'action=gfi_get_categories'\n      + '&nonce=' + GFI_HUB.nonce\n      + '&cpt=' + encodeURIComponent(state.cpt);\n    fetch(GFI_HUB.ajax + '?' + params)\n      .then(function (r) { return r.json(); })\n      .then(function (res) {\n        if (!res.success) return;\n        var currentVal = state.taxTerm;\n        var found = false;\n        var allExpertises = (GFI_HUB.i18n && GFI_HUB.i18n.allExpertises) || 'All Expertises';\n        taxSelect.innerHTML = '<option value=\"0\">' + allExpertises + '<\/option>';\n        res.data.forEach(function (term) {\n          var opt = document.createElement('option');\n          opt.value = term.id;\n          opt.textContent = term.name;\n          if (term.id === currentVal) found = true;\n          taxSelect.appendChild(opt);\n        });\n        taxSelect.value = found ? currentVal : '0';\n        if (!found) state.taxTerm = 0;\n      });\n  }\n\n  function renderPosts(posts) {\n    if (!posts || !posts.length) { postsEl.innerHTML = ('<div class=\"gfi-grid__empty\">'+document.getElementById('gfi-grid').getAttribute('data-i18n-empty')+'<\/div>'); return; }\n    var html = '';\n    for (var i = 0; i < posts.length; i++) { html += buildCard(posts[i]); }\n    postsEl.innerHTML = html;\n  }\n\n  function buildCard(p) {\n    var safeTitle = p.title.replace(\/\"\/g, '&quot;');\n    var imageHtml = p.image ? '<img decoding=\"async\" class=\"gfi-card__image\" src=\"' + p.image + '\" alt=\"' + safeTitle + '\" loading=\"lazy\">' : '';\n    var playHtml  = (p.type_slug === 'podcast') ? '<div class=\"gfi-card__play\"><svg viewBox=\"0 0 14 14\" fill=\"none\"><polygon points=\"4,2 12,7 4,12\" fill=\"#0d2b4e\"\/><\/svg><\/div>' : '';\n    var timeSuffix = (p.type_slug === 'podcast') ? 'min listen' : (p.type_slug === 'webinar') ? 'min watch' : 'min read';\n    var iconSvg = getIcon(p.type_slug);\n    var arrowHtml = '<div class=\"gfi-card__arrow\"><svg viewBox=\"0 0 14 14\" fill=\"none\"><path d=\"M2.5 7h9m0 0L8 3.5M11.5 7L8 10.5\" stroke=\"#fff\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/div>';\n\n    return '<a href=\"' + p.url + '\" class=\"gfi-card\">'\n      + '<div class=\"gfi-card__image-wrap\">'\n        + imageHtml\n        + '<span class=\"gfi-card__type-badge\">' + iconSvg + ' ' + (p.type_label || p.type_slug) + '<\/span>'\n        + playHtml\n      + '<\/div>'\n      + '<div class=\"gfi-card__body\">'\n        + arrowHtml\n        + '<div class=\"gfi-card__meta\">'\n          + (p.category ? '<span class=\"gfi-card__category\">' + p.category + '<\/span>' : '<span><\/span>')\n          + '<span class=\"gfi-card__date\">' + p.date + '<\/span>'\n        + '<\/div>'\n        + '<h3 class=\"gfi-card__title\">' + p.title + '<\/h3>'\n        + '<div class=\"gfi-card__time\">' + (p.read_time || '5') + '<\/div>'\n      + '<\/div>'\n      + '<\/a>';\n  }\n\nfunction renderPagination(current, totalPages) {\n  if (totalPages <= 1) { paginationEl.innerHTML = ''; return; }\n\n  var pages = [];\n\n  \/\/ Always show first and last\n  pages.push(1);\n\n  \/\/ Dots after first if current is far enough\n  if (current > 3) pages.push('dots1');\n\n  \/\/ One page before current (if not already included)\n  if (current - 1 > 1) pages.push(current - 1);\n\n  \/\/ Current page (if not first or last)\n  if (current !== 1 && current !== totalPages) pages.push(current);\n\n  \/\/ One page after current (if not already included)\n  if (current + 1 < totalPages) pages.push(current + 1);\n\n  \/\/ Dots before last if current is far enough\n  if (current < totalPages - 2) pages.push('dots2');\n\n  pages.push(totalPages);\n\n  \/\/ Deduplicate numbers while preserving dots\n  var seen = {}, clean = [];\n  for (var i = 0; i < pages.length; i++) {\n    var p = pages[i];\n    if (p === 'dots1' || p === 'dots2') { clean.push(p); continue; }\n    if (!seen[p]) { seen[p] = true; clean.push(p); }\n  }\n\n  var html = '';\n  html += '<button class=\"gfi-grid__page gfi-grid__page--arrow\" data-page=\"' + (current - 1) + '\"' + (current <= 1 ? ' disabled' : '') + '>'\n    + '<svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M15 18l-6-6 6-6\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/button>';\n\n  for (var j = 0; j < clean.length; j++) {\n    var item = clean[j];\n    if (item === 'dots1' || item === 'dots2') {\n      html += '<button class=\"gfi-grid__page gfi-grid__page--dots\" disabled>...<\/button>';\n    } else {\n      html += '<button class=\"gfi-grid__page' + (item === current ? ' gfi-grid__page--active' : '') + '\" data-page=\"' + item + '\">' + item + '<\/button>';\n    }\n  }\n\n  html += '<button class=\"gfi-grid__page gfi-grid__page--arrow\" data-page=\"' + (current + 1) + '\"' + (current >= totalPages ? ' disabled' : '') + '>'\n    + '<svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M9 18l6-6-6-6\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg><\/button>';\n\n  paginationEl.innerHTML = html;\n}\n\nfunction applyFilter(cpt) {\n    document.querySelectorAll('.gfi-grid__pill').forEach(function (p) { p.classList.remove('gfi-grid__pill--active'); });\n    var matchingPill = document.querySelector('.gfi-grid__pill[data-cpt=\"' + cpt + '\"]');\n    if (matchingPill) matchingPill.classList.add('gfi-grid__pill--active');\n    state.cpt = cpt;\n    state.page = 1;\n    state.taxTerm = 0;\n    fetchCategories();\n    fetchPosts();\n  }\n\n  \/\/ Event delegation so pills built dynamically from GFI_HUB.cpts are handled.\n  pillsWrap.addEventListener('click', function (e) {\n    var pill = e.target.closest('.gfi-grid__pill');\n    if (!pill) return;\n    var cpt = pill.getAttribute('data-cpt');\n    if (cpt === 'all') {\n      history.pushState(null, '', window.location.pathname);\n    } else {\n      history.pushState(null, '', '#' + cpt);\n    }\n    applyFilter(cpt);\n  });\n\n  window.addEventListener('hashchange', function () {\n    var hash = window.location.hash.replace('#', '') || 'all';\n    applyFilter(hash);\n  });\n\n  taxSelect.addEventListener('change', function () {\n    state.taxTerm = parseInt(this.value, 10) || 0;\n    state.page = 1;\n    fetchPosts();\n  });\n\npaginationEl.addEventListener('click', function (e) {\n    var btn = e.target.closest('.gfi-grid__page');\n    if (!btn || btn.disabled || btn.classList.contains('gfi-grid__page--dots')) return;\n    var pg = parseInt(btn.getAttribute('data-page'), 10);\n    if (isNaN(pg) || pg < 1) return;\n    state.page = pg;\n    fetchPosts();\n    document.getElementById('gfi-grid').scrollIntoView({ behavior: 'smooth', block: 'start' });\n  });\n\n waitForConfig(function () {\n    buildPills();\n    localizeDropdown();\n    var hash = window.location.hash.replace('#', '') || 'all';\n    applyFilter(hash);\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Expert insights, industry news &amp; resources Explore our latest industry insights, client case studies and consultant-led resources, designed to help your business get ahead. Articles &amp; resources All Expertises<\/p>\n","protected":false},"author":1,"featured_media":2943,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"_yoast_wpseo_focuskw":"","_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","footnotes":"","_yoast_wpseo_focuskeywords":"","_yoast_wpseo_keywordsynonyms":""},"class_list":["post-1169","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.1 (Yoast SEO v28.1) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Our thinking - Leyton United Kingdom<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Our thinking\" \/>\n<meta property=\"og:description\" content=\"Expert insights, industry news &amp; resources Explore our latest industry insights, client case studies and consultant-led resources, designed to help your business get ahead. Articles &amp; resources All Expertises\" \/>\n<meta property=\"og:url\" content=\"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/\" \/>\n<meta property=\"og:site_name\" content=\"Leyton United Kingdom\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-27T12:46:44+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/\",\"url\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/\",\"name\":\"Our thinking - Leyton United Kingdom\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/leyton.majjane.agency\\\/wp-content\\\/blogs.dir\\\/9\\\/files\\\/2026\\\/06\\\/benchmark-capital-1-1-1.svg\",\"datePublished\":\"2026-03-25T11:44:39+00:00\",\"dateModified\":\"2026-06-27T12:46:44+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/#primaryimage\",\"url\":\"https:\\\/\\\/leyton.majjane.agency\\\/wp-content\\\/blogs.dir\\\/9\\\/files\\\/2026\\\/06\\\/benchmark-capital-1-1-1.svg\",\"contentUrl\":\"https:\\\/\\\/leyton.majjane.agency\\\/wp-content\\\/blogs.dir\\\/9\\\/files\\\/2026\\\/06\\\/benchmark-capital-1-1-1.svg\",\"width\":152,\"height\":53},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/our-thinking\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Our thinking\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/#website\",\"url\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/\",\"name\":\"Leyton United Kingdom\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/#organization\",\"name\":\"Leyton United Kingdom\",\"url\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/leyton.majjane.agency\\\/wp-content\\\/blogs.dir\\\/9\\\/files\\\/2026\\\/01\\\/logo.svg\",\"contentUrl\":\"https:\\\/\\\/leyton.majjane.agency\\\/wp-content\\\/blogs.dir\\\/9\\\/files\\\/2026\\\/01\\\/logo.svg\",\"width\":108,\"height\":44,\"caption\":\"Leyton United Kingdom\"},\"image\":{\"@id\":\"https:\\\/\\\/leyton.majjane.agency\\\/uk\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Our thinking - Leyton United Kingdom","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/","og_locale":"en_US","og_type":"article","og_title":"Our thinking","og_description":"Expert insights, industry news &amp; resources Explore our latest industry insights, client case studies and consultant-led resources, designed to help your business get ahead. Articles &amp; resources All Expertises","og_url":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/","og_site_name":"Leyton United Kingdom","article_modified_time":"2026-06-27T12:46:44+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/","url":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/","name":"Our thinking - Leyton United Kingdom","isPartOf":{"@id":"https:\/\/leyton.majjane.agency\/uk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/#primaryimage"},"image":{"@id":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/#primaryimage"},"thumbnailUrl":"https:\/\/leyton.majjane.agency\/wp-content\/blogs.dir\/9\/files\/2026\/06\/benchmark-capital-1-1-1.svg","datePublished":"2026-03-25T11:44:39+00:00","dateModified":"2026-06-27T12:46:44+00:00","breadcrumb":{"@id":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/leyton.majjane.agency\/uk\/our-thinking\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/#primaryimage","url":"https:\/\/leyton.majjane.agency\/wp-content\/blogs.dir\/9\/files\/2026\/06\/benchmark-capital-1-1-1.svg","contentUrl":"https:\/\/leyton.majjane.agency\/wp-content\/blogs.dir\/9\/files\/2026\/06\/benchmark-capital-1-1-1.svg","width":152,"height":53},{"@type":"BreadcrumbList","@id":"https:\/\/leyton.majjane.agency\/uk\/our-thinking\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/leyton.majjane.agency\/uk\/"},{"@type":"ListItem","position":2,"name":"Our thinking"}]},{"@type":"WebSite","@id":"https:\/\/leyton.majjane.agency\/uk\/#website","url":"https:\/\/leyton.majjane.agency\/uk\/","name":"Leyton United Kingdom","description":"","publisher":{"@id":"https:\/\/leyton.majjane.agency\/uk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/leyton.majjane.agency\/uk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/leyton.majjane.agency\/uk\/#organization","name":"Leyton United Kingdom","url":"https:\/\/leyton.majjane.agency\/uk\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/leyton.majjane.agency\/uk\/#\/schema\/logo\/image\/","url":"https:\/\/leyton.majjane.agency\/wp-content\/blogs.dir\/9\/files\/2026\/01\/logo.svg","contentUrl":"https:\/\/leyton.majjane.agency\/wp-content\/blogs.dir\/9\/files\/2026\/01\/logo.svg","width":108,"height":44,"caption":"Leyton United Kingdom"},"image":{"@id":"https:\/\/leyton.majjane.agency\/uk\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/pages\/1169","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/comments?post=1169"}],"version-history":[{"count":10,"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/pages\/1169\/revisions"}],"predecessor-version":[{"id":11883,"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/pages\/1169\/revisions\/11883"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/media\/2943"}],"wp:attachment":[{"href":"https:\/\/leyton.majjane.agency\/uk\/wp-json\/wp\/v2\/media?parent=1169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}