{"id":624,"date":"2025-03-24T10:41:33","date_gmt":"2025-03-24T10:41:33","guid":{"rendered":"https:\/\/dev.opendesignsin.com\/insillion\/?page_id=624"},"modified":"2025-06-23T11:28:39","modified_gmt":"2025-06-23T11:28:39","slug":"resources","status":"publish","type":"page","link":"https:\/\/dev.opendesignsin.com\/insillion\/resources","title":{"rendered":"Resources"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container has-pattern-background has-mask-background fusion-parallax-none nonhundred-percent-fullwidth non-hundred-percent-height-scrolling lazyload innerbannerSec resource\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-background-size:cover;--awb-flex-wrap:wrap;\" data-bg=\"https:\/\/dev.opendesignsin.com\/insillion\/wp-content\/uploads\/2025\/06\/Blog-Main.jpg\" id=\"innerbannerSec\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:1339.52px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\" data-scroll-devices=\"small-visibility,medium-visibility,large-visibility\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-1 fusion-sep-none fusion-title-center fusion-title-text fusion-title-size-one\"><h1 class=\"fusion-title-heading title-heading-center\" style=\"margin:0;\">Resources Center<\/h1><\/div><div class=\"fusion-text fusion-text-1\"><p>Discover insights, industry updates, and expert perspectives on<br \/>\ninsurance and technology.<\/p>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling resourceListSec\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-background-image:linear-gradient(180deg, rgba(255,255,255,0) 0%,#f1f6fc 100%);--awb-background-size:cover;--awb-flex-wrap:wrap;\" id=\"resourceListSec\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:1339.52px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_1_1 1_1 fusion-flex-column ComHeadTitles textcenter ResourcePageContainer\" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\" data-scroll-devices=\"small-visibility,medium-visibility,large-visibility\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-text fusion-text-2\">\t<!-- Category Filters -->\n\t<div class=\"filters desktop\">\n\t\t<a href=\"https:\/\/dev.opendesignsin.com\/insillion\/resources\" class=\"category-btn active\" data-filter=\"all\">All<\/a>\n\t<\/div>\n\n\t<!-- Mobile Category Dropdown -->\n\t<div class=\"filters mobile\">\n\t\t<select id=\"category-filter\">\n\t\t\t<option value=\"https:\/\/dev.opendesignsin.com\/insillion\/resources\" selected>All<\/option>\n\t\t<\/select>\n\t<\/div>\n\n\t<script>\n\t\tdocument.addEventListener(\"DOMContentLoaded\", function() {\n\t\t\tconst categoryButtonsContainer = document.querySelector(\".filters.desktop\");\n\t\t\tconst categoryDropdown = document.getElementById(\"category-filter\");\n\t\t\tconst categoriesApiUrl = General.site_url + \"\/wp-json\/wp\/v2\/categories?per_page=100&orderby=name&order=asc&_fields=id,name,slug,parent,count\";\n\t\t\tconst currentSlug = \"\";\n\t\t\t\tconst hideChildren = true;\n\n\t\t\tasync function fetchCategories() {\n\t\t\t\ttry {\n\t\t\t\t\tconst response = await fetch(categoriesApiUrl);\n\t\t\t\t\tconst categories = await response.json();\n\n\t\t\t\t\t\/\/ Effective post count = own count + direct children counts\n\t\t\t\t\tconst effectiveCount = {};\n\t\t\t\t\tcategories.forEach(cat => {\n\t\t\t\t\t\teffectiveCount[cat.id] = (effectiveCount[cat.id] || 0) + cat.count;\n\t\t\t\t\t\tif (cat.parent) {\n\t\t\t\t\t\t\teffectiveCount[cat.parent] = (effectiveCount[cat.parent] || 0) + cat.count;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tcategories.forEach(category => {\n\t\t\t\t\t\t\/\/ Skip child (sub) categories in the top bar\n\t\t\t\t\t\tif (hideChildren && category.parent !== 0) return;\n\t\t\t\t\t\t\/\/ Skip categories with no posts (own or in children)\n\t\t\t\t\t\tif ((effectiveCount[category.id] || 0) < 1) return;\n\n\t\t\t\t\t\tconst catSlug = category.slug;\n\t\t\t\t\t\tconst catName = category.name;\n\t\t\t\t\t\tconst catLink = `${General.site_url}\/${catSlug}`;\n\n\t\t\t\t\t\t\/\/ Add anchor link for desktop\n\t\t\t\t\t\tconst a = document.createElement(\"a\");\n\t\t\t\t\t\ta.textContent = catName;\n\t\t\t\t\t\ta.href = catLink;\n\t\t\t\t\t\ta.classList.add(\"category-btn\");\n\t\t\t\t\t\ta.setAttribute(\"data-filter\", catSlug);\n\t\t\t\t\t\tif (catSlug === currentSlug) a.classList.add(\"active\");\n\t\t\t\t\t\tcategoryButtonsContainer.appendChild(a);\n\n\t\t\t\t\t\t\/\/ Add option for mobile\n\t\t\t\t\t\tconst option = document.createElement(\"option\");\n\t\t\t\t\t\toption.value = catLink;\n\t\t\t\t\t\toption.textContent = catName;\n\t\t\t\t\t\tif (catSlug === currentSlug) option.selected = true;\n\t\t\t\t\t\tcategoryDropdown.appendChild(option);\n\t\t\t\t\t});\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.error(\"Error fetching categories:\", error);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t\/\/ Redirect on dropdown change\n\t\t\tcategoryDropdown.addEventListener(\"change\", function() {\n\t\t\t\tconst selected = this.value;\n\t\t\t\tif (selected === \"resource-centre\") {\n\t\t\t\t\twindow.location.href = \"https:\/\/dev.opendesignsin.com\/insillion\/resources\";\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = selected;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tfetchCategories();\n\t\t});\n\t<\/script>\n\n<\/div><div class=\"fusion-text fusion-text-3\" id=\"ResourcesPostSection\">\t<div class=\"search-bar-container\">\n\t\t<div class=\"searchbarLeft\">\n\t\t\t<span id=\"current-category-label\">All<\/span>\n\t\t\t<p class=\"subText\">Explore by categories<\/p>\n\t\t<\/div>\n\t\t<div class=\"searchbarRight\">\n\t\t\t<input type=\"text\" id=\"search-input\" placeholder=\"Search\">\n\t\t<\/div>\n\t<\/div>\n\n\t<div class=\"subcategory-tabs\" id=\"subcategory-tabs\"><\/div>\n\n\t<div class=\"posts-grid\"><\/div>\n\n\t<div class=\"pagination\">\n\t\t<button id=\"prev-page\" disabled>&#8592;<\/button>\n\t\t<div id=\"pagination-numbers\"><\/div>\n\t\t<button id=\"next-page\" disabled>&#8594;<\/button>\n\t<\/div>\n\n\t<script>\n\t\tdocument.addEventListener(\"DOMContentLoaded\", function() {\n\t\t\tconst postsContainer = document.querySelector(\".posts-grid\");\n\t\t\tconst paginationContainer = document.getElementById(\"pagination-numbers\");\n\t\t\tconst prevPageBtn = document.getElementById(\"prev-page\");\n\t\t\tconst nextPageBtn = document.getElementById(\"next-page\");\n\t\t\tconst searchInput = document.getElementById(\"search-input\");\n\t\t\tconst currentCategoryLabel = document.getElementById(\"current-category-label\");\n\t\t\tconst subTabsContainer = document.getElementById(\"subcategory-tabs\");\n\n\t\t\tconst cfgParent  = \"\";\n\t\t\tconst cfgSubtabs = \"false\";\n\n\t\t\tlet currentPage = 1;\n\t\t\tlet totalPages = 1;\n\t\t\tlet currentCategoryFilter = null; \/\/ comma-separated category IDs, or null for all\n\t\t\tlet searchTerm = \"\";\n\t\t\tlet allCategories = [];\n\n\t\t\tconst siteUrl = General.site_url;\n\t\t\tconst apiBaseUrl = siteUrl + \"\/wp-json\/wp\/v2\/posts\";\n\n\t\t\tfunction getSlugFromURL() {\n\t\t\t\tconst pathSegments = window.location.pathname.split('\/').filter(Boolean);\n\t\t\t\treturn pathSegments[pathSegments.length - 1];\n\t\t\t}\n\n\t\t\tasync function fetchAllCategories() {\n\t\t\t\ttry {\n\t\t\t\t\tconst res = await fetch(`${siteUrl}\/wp-json\/wp\/v2\/categories?per_page=100&_fields=id,name,slug,parent,count`);\n\t\t\t\t\treturn await res.json();\n\t\t\t\t} catch (err) {\n\t\t\t\t\tconsole.error(\"Category fetch error:\", err);\n\t\t\t\t\treturn [];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction findCategoryBySlug(slug) {\n\t\t\t\treturn allCategories.find(c => c.slug === slug) || null;\n\t\t\t}\n\n\t\t\tfunction getChildren(parentId) {\n\t\t\t\treturn allCategories.filter(c => c.parent === parentId && c.count > 0);\n\t\t\t}\n\n\t\t\tfunction renderSubTabs(children) {\n\t\t\t\tsubTabsContainer.innerHTML = \"\";\n\t\t\t\tchildren.forEach((child, index) => {\n\t\t\t\t\tconst tab = document.createElement(\"button\");\n\t\t\t\t\ttab.type = \"button\";\n\t\t\t\t\ttab.className = \"subcategory-tab\" + (index === 0 ? \" active\" : \"\");\n\t\t\t\t\ttab.textContent = child.name;\n\t\t\t\t\ttab.addEventListener(\"click\", () => {\n\t\t\t\t\t\tsubTabsContainer.querySelectorAll(\".subcategory-tab\").forEach(t => t.classList.remove(\"active\"));\n\t\t\t\t\t\ttab.classList.add(\"active\");\n\t\t\t\t\t\tcurrentCategoryFilter = String(child.id);\n\t\t\t\t\t\tsearchTerm = \"\";\n\t\t\t\t\t\tsearchInput.value = \"\";\n\t\t\t\t\t\tfetchPosts(1);\n\t\t\t\t\t});\n\t\t\t\t\tsubTabsContainer.appendChild(tab);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tasync function fetchPosts(page = 1) {\n\t\t\t\tcurrentPage = page;\t\n\t\t\t\tpostsContainer.innerHTML = \"<div><\/div><div class='postLoadingOut'><p class='postLoading'><\/p><\/div><div><\/div>\";\n\t\t\t\tpaginationContainer.innerHTML = \"\";\n\n\t\t\t\tlet url = `${apiBaseUrl}?per_page=6&page=${page}&_embed`;\n\n\t\t\t\tif (currentCategoryFilter) {\n\t\t\t\t\turl += `&categories=${currentCategoryFilter}`;\n\t\t\t\t}\n\t\t\t\tif (searchTerm) {\n\t\t\t\t\turl += `&search=${encodeURIComponent(searchTerm)}`;\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tconst res = await fetch(url);\n\t\t\t\t\tif (!res.ok) throw new Error(\"No posts found.\");\n\t\t\t\t\tconst posts = await res.json();\n\t\t\t\t\ttotalPages = parseInt(res.headers.get(\"X-WP-TotalPages\")) || 1;\n\t\t\t\t\tdisplayPosts(posts);\n\t\t\t\t\tsetupPagination(totalPages, page);\n\n\t\t\t\t\t\/\/ Scroll only on non-mobile devices\n\/\/ \t\t\t\t\tif (window.innerWidth >= 768) {\n\/\/ \t\t\t\t\t\tconst scrollTarget = document.getElementById(\"resourceListSec\");\n\/\/ \t\t\t\t\t\tif (scrollTarget) {\n\/\/ \t\t\t\t\t\t\tscrollTarget.scrollIntoView({\n\/\/ \t\t\t\t\t\t\t\tbehavior: 'smooth',\n\/\/ \t\t\t\t\t\t\t\tblock: 'start'\n\/\/ \t\t\t\t\t\t\t});\n\/\/ \t\t\t\t\t\t}\n\/\/ \t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\twindow.addEventListener(\"load\", () => {\n  if (window.innerWidth >= 768) {\n    window.scrollTo({\n      top: 0,\n      left: 0,\n      behavior: \"smooth\" \/\/ or \"auto\" if you don\u2019t want smooth scroll\n    });\n  }\n});\n\n\t\t\t\t} catch (err) {\n\t\t\t\t\tpostsContainer.innerHTML = \"<p>No posts found.<\/p>\";\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tfunction displayPosts(posts) {\n\t\t\t\t\/\/ Identify the Videos category tree (parent + its subcategories)\n\t\t\t\tconst videosParent = allCategories.find(c => c.slug === 'video' || c.slug === 'videos');\n\t\t\t\tconst videosId = videosParent ? videosParent.id : null;\n\t\t\t\tconst videoIds = videosId ? [videosId, ...allCategories.filter(c => c.parent === videosId).map(c => c.id)] : [];\n\n\t\t\t\tpostsContainer.innerHTML = posts.map(post => {\n\n\t\t\t\t\tconst title = post.title.rendered.substring(0, 80) + (post.title.rendered.length > 80 ? \"...\" : \"\");\n\t\t\t\t\tconst rawExcerpt = post.excerpt.rendered.replace(\/<[^>]+>\/g, \"\").trim();\n\t\t\t\t\tconst excerpt = rawExcerpt ? rawExcerpt.substring(0, 100) + (rawExcerpt.length > 100 ? \"...\" : \"\") : \"\";\n\n\n\t\t\t\t\tconst category = post._embedded[\"wp:term\"]?.[0]?.[0]?.name || \"Uncategorized\";\n\t\t\t\t\tconst categorySlug = post._embedded[\"wp:term\"][0][0]?.slug || \"Uncategorized\";\n\t\t\t\t\tconst isEvent = category.toLowerCase() === \"events\";\n\n\t\t\t\t\t\/\/ Is this post part of the Videos category tree?\n\t\t\t\t\tconst postTermIds = (post._embedded[\"wp:term\"]?.[0] || []).map(t => t.id);\n\t\t\t\t\tconst isVideoCategory = videoIds.some(id => postTermIds.includes(id));\n\t\t\t\t\tconst authorName = post.acf?.author_name || \"\";\n\n\t\t\t\t\t\/\/ Get date from ACF field if category is \"events\", else use post.date\n\t\t\t\t\tlet dateStr = isEvent ? post.acf?.event_date : post.date;\n\t\t\t\t\tlet date = \"\";\n\n\t\t\t\t\tif (dateStr) {\n\t\t\t\t\t\tconst dateObj = new Date(dateStr);\n\t\t\t\t\t\tdate = dateObj.toLocaleDateString('en-US', {\n\t\t\t\t\t\t\tmonth: 'short',\n\t\t\t\t\t\t\tday: 'numeric',\n\t\t\t\t\t\t\tyear: 'numeric'\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Video posts: open the ACF YouTube link when enabled\n\t\t\t\t\tconst ytField = post.acf?.youtube_link;\n\t\t\t\t\tlet ytUrl = \"\";\n\t\t\t\t\tif (typeof ytField === \"string\") ytUrl = ytField;\n\t\t\t\t\telse if (ytField && ytField.url) ytUrl = ytField.url;\n\t\t\t\t\tconst ytTarget = (ytField && ytField.target) ? ytField.target : \"_blank\";\n\t\t\t\t\tconst isVideo = !!(post.acf?.open_youtube_link && ytUrl);\n\n\t\t\t\t\tlet postUrl = isEvent ? \"#\" : post.link;\n\t\t\t\t\tlet linkAttrs = isEvent ? 'onclick=\"return false;\"' : \"\";\n\t\t\t\t\tif (isVideo) {\n\t\t\t\t\t\tpostUrl = ytUrl;\n\t\t\t\t\t\tlinkAttrs = `target=\"${ytTarget}\" rel=\"noopener\"`;\n\t\t\t\t\t}\n\t\t\t\t\tconst imageUrl = post._embedded[\"wp:featuredmedia\"]?.[0]?.source_url || \"https:\/\/via.placeholder.com\/300\";\n\n\t\t\t\t\treturn `\n\t\t\t<a href=\"${postUrl}\" class=\"post-card ${categorySlug} ${isVideoCategory ? 'video-card' : ''}\" ${linkAttrs}>\n\t\t\t\t<div class=\"imgTitle\">\n\t\t\t\t\t<img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" data-orig-src=\"${imageUrl}\" alt=\"${title}\" class=\"lazyload post-image\">\n\t\t\t\t\t${isVideo ? '<span class=\"play-btn\" aria-hidden=\"true\"><\/span>' : ''}\n\t\t\t\t\t<h3>${title}<\/h3>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"description\">\n\t\t\t\t\t${isVideoCategory ? '' : `<span class=\"category\">${category}<\/span>`}\n\t\t\t\t\t${excerpt ? `<p>${excerpt}<\/p>` : ''}\n\t\t\t\t\t${isVideoCategory\n\t\t\t\t\t\t? (authorName ? `<span class=\"featuring\"><b>Featuring :<\/b> ${authorName}<\/span>` : '')\n\t\t\t\t\t\t: (date ? `<span class=\"date\">${date}<\/span>` : '')}\n\t\t\t\t<\/div>\n\t\t\t<\/a>\n\t\t`;\n\t\t\t\t}).join(\"\");\n\t\t\t}\n\n\n\t\t\tfunction setupPagination(totalPages, currentPage) {\n\t\t\t\tpaginationContainer.innerHTML = \"\";\n\n\t\t\t\tprevPageBtn.disabled = currentPage === 1;\n\t\t\t\tnextPageBtn.disabled = currentPage === totalPages;\n\n\t\t\t\tconsole.log(prevPageBtn.disabled);\n\n\n\t\t\t\tlet startPage = Math.max(1, currentPage - 1);\n\t\t\t\tlet endPage = Math.min(totalPages, startPage + 2);\n\n\t\t\t\tfor (let i = startPage; i <= endPage; i++) {\n\t\t\t\t\tconst btn = document.createElement(\"button\");\n\t\t\t\t\tbtn.textContent = i;\n\t\t\t\t\tbtn.classList.add(\"page-button\");\n\t\t\t\t\tif (i === currentPage) btn.classList.add(\"active\");\n\t\t\t\t\tbtn.addEventListener(\"click\", () => {\n\t\t\t\t\t\tcurrentPage = i;\n\t\t\t\t\t\tfetchPosts(i);\n\t\t\t\t\t});\n\t\t\t\t\tpaginationContainer.appendChild(btn);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tprevPageBtn.addEventListener(\"click\", () => {\n\n\t\t\t\tif (currentPage > 1) {\n\t\t\t\t\tcurrentPage--;\n\t\t\t\t\tfetchPosts(currentPage);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tnextPageBtn.addEventListener(\"click\", () => {\n\t\t\t\tif (currentPage < totalPages) {\n\t\t\t\t\tcurrentPage++;\n\t\t\t\t\tfetchPosts(currentPage);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tsearchInput.addEventListener(\"input\", (e) => {\n\t\t\t\tsearchTerm = e.target.value;\n\t\t\t\tcurrentPage = 1;\n\t\t\t\tfetchPosts();\n\t\t\t});\n\n\t\t\t\/\/ INIT\n\t\t\t(async () => {\n\t\t\t\tallCategories = await fetchAllCategories();\n\n\t\t\t\tconst urlSlug    = getSlugFromURL();\n\t\t\t\tconst parentSlug = cfgParent || urlSlug;\n\t\t\t\tconst parentCat  = findCategoryBySlug(parentSlug);\n\n\t\t\t\tfunction toTitle(slug) {\n\t\t\t\t\treturn slug.split('-').map(w => w.charAt(0).toUpperCase() + w.slice(1)).join(' ');\n\t\t\t\t}\n\n\t\t\t\t\/\/ Heading label\n\t\t\t\tlet label = 'All';\n\t\t\t\tif (parentCat) {\n\t\t\t\t\tlabel = parentCat.name;\n\t\t\t\t} else if (urlSlug && urlSlug !== 'resources') {\n\t\t\t\t\tlabel = toTitle(urlSlug);\n\t\t\t\t}\n\t\t\t\tcurrentCategoryLabel.textContent = label;\n\n\t\t\t\tconst children = parentCat ? getChildren(parentCat.id) : [];\n\t\t\t\tconst wantTabs = cfgSubtabs === 'true' || (cfgSubtabs === 'auto' && children.length > 0);\n\n\t\t\t\tif (wantTabs && children.length > 0) {\n\t\t\t\t\t\/\/ Nested subcategory tabs: default to first subcategory\n\t\t\t\t\trenderSubTabs(children);\n\t\t\t\t\tcurrentCategoryFilter = String(children[0].id);\n\t\t\t\t} else if (parentCat) {\n\t\t\t\t\t\/\/ Show all from parent: aggregate parent + its children\n\t\t\t\t\tconst ids = [parentCat.id, ...getChildren(parentCat.id).map(c => c.id)];\n\t\t\t\t\tcurrentCategoryFilter = ids.join(\",\");\n\t\t\t\t} else {\n\t\t\t\t\tcurrentCategoryFilter = null; \/\/ all posts\n\t\t\t\t}\n\n\t\t\t\tfetchPosts(1);\n\t\t\t})();\n\t\t});\n\t<\/script>\n\n\t<style>\n\t\t.subcategory-tabs {\n\t\t\tdisplay: flex;\n\t\t\tflex-wrap: wrap;\n\t\t\tgap: 28px;\n\t\t\tborder-bottom: 1px solid #e5e7eb;\n\t\t\tmargin: 8px 0 24px;\n\t\t}\n\n\t\t.subcategory-tabs:empty { display: none; }\n\n\t\t.subcategory-tab {\n\t\t\tbackground: none;\n\t\t\tborder: none;\n\t\t\tpadding: 8px 2px;\n\t\t\tmargin-bottom: -1px;\n\t\t\tfont-size: 15px;\n\t\t\tcolor: #6b7280;\n\t\t\tcursor: pointer;\n\t\t\tborder-bottom: 2px solid transparent;\n\t\t}\n\n\t\t.subcategory-tab.active {\n\t\t\tcolor: #001F3F;\n\t\t\tfont-weight: 600;\n\t\t\tborder-bottom-color: #001F3F;\n\t\t}\n\n\t\t.posts-grid {\n\t\t\tdisplay: grid;\n\t\t\tgrid-template-columns: repeat(3, 1fr);\n\t\t\tgap: 20px;\n\t\t}\n\n\t\t.post-card {\n\t\t\tdisplay: block;\n\t\t\tpadding: 20px;\n\t\t\tbackground: #001F3F;\n\t\t\tcolor: white;\n\t\t\tborder-radius: 10px;\n\t\t\ttext-align: center;\n\t\t\ttext-decoration: none;\n\t\t}\n\n\t\t.post-card .imgTitle {\n\t\t\tposition: relative;\n\t\t}\n\n\t\t.post-card .play-btn {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\tleft: 50%;\n\t\t\ttransform: translate(-50%, -50%);\n\t\t\twidth: 46px;\n\t\t\theight: 46px;\n\t\t\tborder-radius: 50%;\n\t\t\tbackground: rgba(255, 255, 255, 0.92);\n\t\t\tpointer-events: none;\n\t\t}\n\n\t\t.post-card .play-btn::before {\n\t\t\tcontent: \"\";\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\tleft: 55%;\n\t\t\ttransform: translate(-50%, -50%);\n\t\t\tborder-style: solid;\n\t\t\tborder-width: 8px 0 8px 13px;\n\t\t\tborder-color: transparent transparent transparent #001F3F;\n\t\t}\n\n\t\t.post-card .featuring {\n\t\t\tdisplay: block;\n\t\t\tfont-size: 12px;\n\t\t\tcolor: #6b7280;\n\t\t}\n\n\t\t.pagination {\n\t\t\tdisplay: flex;\n\t\t\tgap: 5px;\n\t\t\tjustify-content: center;\n\t\t\tmargin-top: 20px;\n\t\t}\n\n\t\t.pagination button {\n\t\t\tpadding: 8px 12px;\n\t\t\tbackground: #001F3F;\n\t\t\tcolor: #fff;\n\t\t\tborder-radius: 5px;\n\t\t\tborder: none;\n\t\t\tcursor: pointer;\n\t\t}\n\n\t\t.pagination button:disabled {\n\t\t\topacity: 0.5;\n\t\t\tcursor: not-allowed;\n\t\t}\n\t<\/style>\n\n<\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-3 fusion-flex-container has-pattern-background has-mask-background fusion-parallax-none nonhundred-percent-fullwidth non-hundred-percent-height-scrolling lazyload reimagineSec\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-background-size:cover;--awb-flex-wrap:wrap;\" data-bg=\"https:\/\/dev.opendesignsin.com\/insillion\/wp-content\/uploads\/2025\/04\/inner-banner-bg.jpg\" id=\"reimagineSec\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:1339.52px;margin-left: calc(-4% \/ 2 );margin-right: calc(-4% \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_1 1_1 fusion-flex-column ComHeadTitles textcenter \" style=\"--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:1.92%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:1.92%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;\" data-scroll-devices=\"small-visibility,medium-visibility,large-visibility\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-2 fusion-sep-none fusion-title-center fusion-title-text fusion-title-size-two\"><h2 class=\"fusion-title-heading title-heading-center\" style=\"margin:0;\">Reimagine insurance<br \/>\nproducts and processes.<\/h2><\/div><div class=\"fusion-text fusion-text-4\"><p>Faster, Intelligent, and Out-of-the-box Software solutions.<\/p>\n<\/div><div class=\"fusion-text fusion-text-5\"><p><a href=\"https:\/\/dev.opendesignsin.com\/insillion\/subscribe\/\">Get started<\/a><\/p>\n<\/div><\/div><\/div><\/div><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"100-width.php","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-624","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/pages\/624","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/comments?post=624"}],"version-history":[{"count":30,"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/pages\/624\/revisions"}],"predecessor-version":[{"id":771,"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/pages\/624\/revisions\/771"}],"wp:attachment":[{"href":"https:\/\/dev.opendesignsin.com\/insillion\/wp-json\/wp\/v2\/media?parent=624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}