1import{r as i,j as e}from"./vendor-query-BxTmhWbm.js";import{L as f}from"./vendor-router-B18oVxp4.js";import{N as E,F as A}from"./footer-CJUKKcPi.js";import{t as N}from"./analytics-Dn1fY-Xd.js";import{S as p}from"./search-B9msfcgh.js";import{T as O}from"./tag-DaYKV-Kc.js";import{C as y}from"./calendar-C3LFJiQO.js";import{C as w}from"./clock-Czeh_BDc.js";import{A as v}from"./arrow-right-B7A3N3AC.js";import{C as T}from"./circle-check-B-DeMB2l.js";import"./vendor-react-Bzgz95E1.js";import"./index-BuVjTKWJ.js";import"./vendor-radix-BnR1cQ_t.js";import"./chevron-down-B482yNTg.js";import"./chevron-right-C17nl1V7.js";function C(){const[t,r]=i.useState(""),[s,d]=i.useState(""),[m]=i.useState(Date.now()),[l,n]=i.useState(!1),[u,a]=i.useState(!1),[o,g]=i.useState(""),S=async c=>{if(c.preventDefault(),!!t){if(s){a(!0);return}if(Date.now()-m<3e3){a(!0);return}g(""),n(!0);try{const h=await fetch("/api/leads",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:"Newsletter Subscriber",email:t,serviceName:"newsletter",pageUrl:window.location.href,_hp:s,_t:m})});if(!h.ok){const j=await h.json();throw new Error(j.message||"Something went wrong")}N("newsletter_subscribed",{location:"blog_index",page:window.location.pathname}),a(!0)}catch(h){g(h.message||"Something went wrong. Please try again.")}finally{n(!1)}}};return e.jsx("section",{style:{background:"linear-gradient(135deg, hsl(168 76% 97%) 0%, hsl(199 89% 96%) 100%)"},children:e.jsxs("div",{className:"max-w-3xl mx-auto px-6 py-16 text-center",children:[e.jsx("h2",{className:"font-display text-2xl md:text-3xl font-bold text-slate-900 mb-3",children:"Stay Ahead of Search"}),e.jsx("p",{className:"text-slate-600 mb-6",children:"Get the latest SEO strategies and insights delivered to your inbox. No spam, just actionable advice."}),u?e.jsxs("div",{className:"flex items-center justify-center gap-2 text-primary font-semibold",children:[e.jsx(T,{className:"w-5 h-5"}),e.jsx("span",{children:"Thanks for subscribing! You'll hear from us soon."})]}):e.jsxs("form",{className:"flex flex-col sm:flex-row gap-3 max-w-lg mx-auto",onSubmit:S,children:[e.jsx("div",{"aria-hidden":"true",style:{position:"absolute",left:"-9999px",opacity:0,height:0,overflow:"hidden"},children:e.jsx("input",{type:"text",name:"website_url",value:s,onChange:c=>d(c.target.value),tabIndex:-1,autoComplete:"off"})}),e.jsx("input",{type:"email",required:!0,placeholder:"Your email address",value:t,onChange:c=>r(c.target.value),"data-testid":"input-newsletter-email",className:"flex-1 px-4 py-3 rounded-xl bg-white border border-slate-200 text-sm text-slate-800 placeholder:text-slate-400 focus:outline-none focus:ring-2 focus:ring-primary/30 focus:border-primary"}),e.jsx("button",{type:"submit",disabled:l,"data-testid":"button-subscribe",className:"px-6 py-3 rounded-xl bg-primary text-white text-sm font-semibold hover:bg-primary/90 transition-colors shadow-sm disabled:opacity-50",children:l?"Subscribing...":"Subscribe"})]}),o&&e.jsx("p",{className:"text-red-500 text-sm mt-2",children:o})]})})}const x=[{title:"How to Get Your Local Business Recommended in ChatGPT and Google AI Search",slug:"/blog/how-to-get-your-local-business-recommended-in-chatgpt-and-google-ai-search",excerpt:"People are changing how they search for local businesses. This creates a new challenge for local service businesses.",category:"Local SEO",publishDate:"September 30, 2026",readTime:"15 min read",image:"/wp-content/uploads/2026/09/local-business-chatgpt-google-ai-search-featured.png",imageAlt:"Illustration of a local business recommended in ChatGPT and Google AI Search, with supporting service and location signals",author:"Tharindu Gunawardana",featured:!0},{title:"E-commerce URL Management: How to Handle Out-of-Stock Products, Deleted Products and Collection Pages",slug:"/blog/ecommerce-url-management",excerpt:"Learn when to keep, redirect, consolidate or retire product and collection URLs as stock and merchandising change. Includes a free downloadable decision flow.",category:"E-commerce SEO",publishDate:"September 15, 2026",readTime:"10 min read",image:"/wp-content/uploads/2026/09/ecommerce-url-management-decision-flow.png",imageAlt:"E-commerce URL decision flow for out-of-stock products, discontinued items, unavailable variants, empty collections and duplicate categories",author:"Tharindu Gunawardana",featured:!0},{title:"Why AI Brand Perception and Sentiment Matter for AI Visibility",slug:"/blog/ai-brand-perception-and-sentiment",excerpt:"Learn how AI brand perception and sentiment analysis shape what AI systems understand, retrieve, cite and potentially recommend about a brand.",category:"AI SEO",publishDate:"September 11, 2026",readTime:"8 min read",image:"/wp-content/uploads/2026/09/ai-brand-perception-and-sentiment.jpg",imageAlt:"AI brand perception ecosystem connecting a brand profile with websites, reviews, media, forums, directories and structured data",author:"Tharindu Gunawardana",featured:!0},{title:"GEO vs AEO vs AI SEO: What Is the Difference?",slug:"/blog/geo-v
1s-aeo-vs-ai-seo",excerpt:"AI SEO, AEO and GEO are related but not interchangeable. AI SEO is the broader discipline. AEO focuses on answer-first content and retrieval. GEO focuses on discovery, citations, mentions and recommendations within generative AI systems. This guide explains the scope of each term and how to apply them as a unified strategy.",category:"AI SEO",publishDate:"August 19, 2026",readTime:"16 min read",image:"/wp-content/uploads/2026/08/geo-vs-aeo-vs-ai-seo-hero.jpg",imageAlt:"Abstract Venn diagram showing GEO and AEO as overlapping circles within the broader AI SEO discipline",author:"Tharindu Gunawardana",featured:!0},{title:"How to Choose the Right Domain Strategy for International SEO",slug:"/blog/international-seo-domain-strategy",excerpt:"The right international SEO domain structure depends on how independently each country operates. This guide compares subdirectories, subdomains and ccTLDs across seven operational dimensions and includes a scored decision framework, hreflang implementation guide and common mistakes to avoid.",category:"Technical SEO",publishDate:"July 15, 2026",readTime:"34 min read",image:"/wp-content/uploads/2026/07/international-seo-domain-strategy-hero.png",imageAlt:"Infographic comparing three international SEO domain strategies: subdirectory, subdomain and ccTLD, with best-use conditions and a tip to choose based on market independence, technical setup and localisation needs",author:"Tharindu Gunawardana",featured:!0},{title:"From Keywords to Semantics to Epistemics: The Third Era of Search Optimisation",slug:"/blog/keywords-to-semantics-to-epistemics",excerpt:"Search optimisation has moved through three eras. The third, epistemic SEO, evaluates content at the claim level using verifiability, provenance, novelty, and consistency. Backed by two Google patents and the Check Grounding API, with a step-by-step rewrite process.",category:"AI SEO",publishDate:"July 7, 2026",readTime:"21 min read",image:"/wp-content/uploads/2026/07/epistemic-seo-third-era-search-hero.svg",imageAlt:"Three abstract zones representing the evolution from keyword string matching through semantic vector spaces to epistemic claim verification in search",author:"Tharindu Gunawardana",featured:!0},{title:"Entity Gravity - Why Some Brands Appear Everywhere in AI Answers (And Others Don't)",slug:"/blog/what-is-entity-gravity-in-ai-search",excerpt:"Entity gravity is the cumulative strength of a brand's pull in semantic space, determined by semantic proximity, co-citation density, and relation type diversity. Learn why it governs AI search citations and how to build it deliberately.",category:"AI SEO",publishDate:"June 17, 2026",readTime:"23 min read",image:"/wp-content/uploads/2026/06/what-is-entity-gravity-in-ai-search-hero.svg",imageAlt:"Abstract orbital diagram showing a brand entity at centre with related concept nodes orbiting at varying distances, representing semantic gravity in AI search",author:"Tharindu Gunawardana",featured:!0},{title:"Google's Chain of Thought Patent Deep Dive: How AI Models Evaluate Content Using Reasoning Paths",slug:"/blog/google-patent-chain-of-thought-seo",excerpt:"Google patented Chain of Thought reasoning for content evaluation in March 2025. This deep-dive covers three mechanisms (CoT, SC, QR) and translates each into concrete content writing, on-page SEO, and image optimisation changes with before/after examples.",category:"AI SEO",publishDate:"May 22, 2026",readTime:"28 min read",image:"/wp-content/uploads/2026/05/google-patent-chain-of-thought-seo-hero.webp",imageAlt:"Chain of thought reasoning diagram showing interconnected nodes representing premise, intermediate states, and conclusion in Google's AI content evaluation model",author:"Tharindu Gunawardana",featured:!0},{title:"Why Retrieval Is the New Ranking: 12 LLM Methods Reshaping AI SEO",slug:"/blog/llm-retrieval-methods-ai-seo",excerpt:"AI search uses 12 retrieval methods to select what gets cited. Vector similarity, ColBERT, RRF, cross-encoder reranking, semantic chunking, HyDE and more. Two SEO examples per method and a 7-step optimisation framework.",category:"AI SEO",publishDate:"April 10, 2026",readTime:"35 min read",image:"/wp-content/uploads/2026/04/llm-retrieval-methods-ai-seo-hero.webp",imageAlt:"Taxonomy diagram of 12 LLM retrieval methods across vector space, sparse and hybrid, graph-based, and RAG-era categories",author:"Tharindu Gunawardana",featured:!0},{title:"Ecommerce SEO Audit Checklist (2026) - Diagnostic Framework for Revenue Recovery",slug:"/blog/ecommerce-seo-audit-checklist",excerpt:"Ecommerce stores face SEO problems content sites never encounter: faceted navigation waste, manufacturer duplicate descriptions, and inventory volatility. This checklist covers site architecture, product schema, crawl budget, and Core Web Vitals benchmarks.",category:"E-commerce SEO",publishDate:"May 11, 2026",readTime:"23 min read",image:"/wp-content/uploads/2026/05/ecommerce-seo-audit-checklist-hero.svg",imageAlt:"Ecommerce SEO audit workflow showing product page structure, analytics indicators, and schema data points",author:"Tharindu Gunawardana",featured:!0},{title:"How Vibe-Coded Sites Can Rank: The Technical SEO Playbook for Builders",slug:"/blog/vibe-platform-seo",excerpt:"Vibe-coded websites use JavaScript-heavy architectures that require deliberate SEO configuration. This guide covers server-side rendering, Core Web Vitals, dynamic meta tags, URL routing, and schema markup with working code examples.",category:"Technical SEO",publishDate:"April 20, 2026",readTime:"19 min read",image:"/wp-content/uploads/2026/04/vibe-platform-seo-hero.svg",imageAlt:"Architecture diagram showing a Vibe-coded website connecting through a server-side rendering layer to a search engine crawler",author:"Tharindu Gunawardana",featured:!0},{title:"Melbourne Suburb SEO: How to Target Local Areas for Better Rankings",slug:"/blog/melbourne-suburb-seo",excerpt:"How Melbourne service businesses rank in suburb-specific local pack results. Covers suburb keyword research, landing page structure, GBP suburb strategy, citation building, and schema markup.",category:"Local SEO",publishDate:"April 11, 2026",readTime:"23 min read",image:"/wp-content/uploads/2026/04/melbourne-suburb-seo-hero.svg",imageAlt:"Melbourne suburb SEO targeting map with location pins and local search signals",author:"Tharindu Gunawardana",featured:!0},{title:"RAG and Grounding: How AI Search Stays Accurate and Trustworthy",slug:"/blog/rag-and-groun
1ding-how-ai-search-stays-accurate",excerpt:"A patent-verified 7-stage breakdown of how Retrieval-Augmented Generation and grounding prevent AI hallucinations. Covers vector retrieval, grounding failure modes, and what this means for Australian businesses in AI search.",category:"AI SEO",publishDate:"March 25, 2026",readTime:"18 min read",image:"/wp-content/uploads/2026/03/rag-and-grounding-how-ai-search-stays-accurate-hero.svg",imageAlt:"RAG and grounding pipeline for AI search accuracy",author:"Tharindu Gunawardana",featured:!0},{title:"82 SEO Fixes That Will Improve Your eCommerce Product Pages",slug:"/blog/product-page-seo",excerpt:"Fix every SEO weakness on your eCommerce product pages. 82 specific improvements across technical SEO, schema markup, CRO, and content quality.",category:"E-commerce SEO",publishDate:"March 19, 2026",readTime:"22 min read",image:"/wp-content/uploads/2026/03/product-page-seo-82-fixes.svg",imageAlt:"82 SEO Fixes for eCommerce Product Pages",author:"Tharindu Gunawardana",featured:!0},{title:"Google Business Profile Optimisation: The Complete Local SEO Guide for 2026",slug:"/blog/google-business-profile-optimisation-guide",excerpt:"Covers every dimension of local SEO: the ranking algorithm, reviews, citations, schema, suburb keyword research, audits, multi-location strategy, penalty recovery, seasonal planning, and ROI reporting.",category:"Local SEO",publishDate:"March 27, 2026",readTime:"30 min read",image:"/wp-content/uploads/2026/03/google-business-profile-optimisation-guide-hero.svg",imageAlt:"Google Business Profile optimisation and local SEO strategy guide",author:"Tharindu Gunawardana",featured:!0},{title:"How to Create a Google Business (GMB) Profile",slug:"/blog/how-to-create-a-google-business-gmb-profile",excerpt:"Step-by-step guide to creating and optimising your Google Business Profile. Learn how to set up, verify, and optimise your profile for local SEO success.",category:"Local SEO",publishDate:"September 7, 2025",readTime:"5 min read",image:"/wp-content/uploads/2025/09/GMB-Steup-Step1-1260x500.png",imageAlt:"How to create a Google Business Profile",author:"Tharindu Gunawardana",featured:!0},{title:"A Deep Dive into AI Search Jargon & Google's Evolving Brain",slug:"/blog/a-deep-dive-into-ai-search-jargon-googles-evolving-brain",excerpt:"Understand the key AI search terminology reshaping how Google ranks and delivers results. From embeddings to retrieval-augmented generation, learn what matters for your SEO strategy.",category:"AI SEO",publishDate:"January 15, 2025",readTime:"12 min read",image:"/wp-content/uploads/2025/06/A-Deep-Dive-into-AI-Search-Jargon-2-1260x500.png",imageAlt:"AI Search Jargon and Google's Evolving Brain",author:"Tharindu Gunawardana",featured:!0},{title:"Crawlability and Indexability: Issues & Checklist",slug:"/blog/crawlability-and-indexability-issues-checklist",excerpt:"Learn about crawlability and indexability issues that prevent your website from appearing in Google search results. Complete checklist to diagnose and fix crawling and indexing problems.",category:"Technical SEO",publishDate:"December 1, 2024",readTime:"10 min read",image:"/wp-content/uploads/2024/12/Crawlability-and-Indexability-1260x500.jpg",imageAlt:"Crawlability and Indexability Issues and Checklist",author:"Tharindu Gunawardana",featured:!0},{title:"SEO Website Migration Checklist",slug:"/blog/seo-website-migration-checklist",excerpt:"Complete SEO website migration checklist covering data gathering, design review, pre-launch, launch day, and post-migration evaluation. Maintain rankings and organic traffic during your site migration.",category:"SEO Migration",publishDate:"October 18, 2024",readTime:"4 min read",image:"/wp-content/uploads/2024/05/SEO-Migration-Service-3-1260x500.png",imageAlt:"SEO Website Migration Checklist",author:"Tharindu Gunawardana",featured:!1},{title:"Content Migration in SEO: Why So Many Fail During Site Migration",slug:"/blog/content-migration-in-seo",excerpt:"Learn why content migration is a critical but overlooked step in SEO migration. Follow these 6 steps to properly migrate content and maintain your search rankings.",category:"SEO Migration",publishDate:"November 1, 2024",readTime:"5 min read",image:"/wp-content/uploads/2024/11/Content-Migration-in-SEO-3-1260x500.jpg",imageAlt:"Content Migration in SEO",author:"Tharindu Gunawardana",featured:!1}],k=["All","SEO","Local SEO","AI SEO","Technical SEO","Content Marketing","SEO Migration","Google Updates","Tools & Tips"];function I({label:t,active:r,onClick:s}){return e.jsx("button",{onClick:s,"data-testid":`category-filter-${t.toLowerCase().replace(/\s+/g,"-")}`,className:`px-5 py-2 rounded-full text-sm font-medium transition-all duration-200 whitespace-nowrap ${r?"bg-primary text-white shadow-md":"bg-slate-100 text-slate-600 hover:bg-slate-200 hover:text-slate-800"}`,children:t})}function G({post:t,index:r}){return e.jsx(f,{href:t.slug,"data-testid":`featured-post-${r}`,children:e.jsxs("article",{className:"group relative overflow-hidden rounded-2xl bg-white border border-slate-100 shadow-sm hover:shadow-lg transition-all duration-300 h-full flex flex-col",children:[e.jsxs("div",{className:"relative overflow-hidden aspect-[16/9]",style:{backgroundColor:"#f1f5f9"},children:[e.jsx("img",{src:t.image,alt:t.imageAlt,className:"w-full h-full object-contain group-hover:scale-105 transition-transform duration-500",loading:"lazy"}),e.jsx("div",{className:"absolute inset-0 bg-gradient-to-t from-black/30 via-trans
1parent to-transparent pointer-events-none"}),e.jsx("span",{className:"absolute top-4 left-4 px-3 py-1 rounded-full text-xs font-semibold tracking-wide uppercase",style:{backgroundColor:"hsl(168 76% 45%)",color:"white"},children:t.category})]}),e.jsxs("div",{className:"p-5 flex flex-col flex-1",children:[e.jsx("h3",{className:"font-display font-bold text-slate-900 text-lg group-hover:text-primary transition-colors leading-snug mb-2",children:t.title}),e.jsx("p",{className:"text-slate-500 text-sm leading-relaxed line-clamp-2 mb-4 flex-1",children:t.excerpt}),e.jsxs("div",{className:"flex items-center justify-between pt-3 border-t border-slate-50",children:[e.jsxs("div",{className:"flex items-center gap-3 text-xs text-slate-400",children:[e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(y,{className:"h-3.5 w-3.5"}),t.publishDate]}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(w,{className:"h-3.5 w-3.5"}),t.readTime]})]}),e.jsxs("span",{className:"text-primary text-sm font-medium flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity",children:["Read ",e.jsx(v,{className:"h-3.5 w-3.5"})]})]})]})]})})}function b({post:t}){return e.jsx(f,{href:t.slug,"data-testid":`post-card-${t.slug}`,children:e.jsxs("article",{className:"group rounded-2xl overflow-hidden bg-white border border-slate-100 shadow-sm hover:shadow-lg transition-all duration-300 h-full flex flex-col",children:[e.jsxs("div",{className:"relative overflow-hidden aspect-[16/9]",style:{backgroundColor:"#f1f5f9"},children:[e.jsx("img",{src:t.image,alt:t.imageAlt,className:"w-full h-full object-contain group-hover:scale-105 transition-transform duration-500",loading:"lazy"}),e.jsx("span",{className:"absolute top-4 left-4 px-3 py-1 rounded-full text-xs font-semibold tracking-wide uppercase",style:{backgroundColor:"hsl(168 76% 45%)",color:"white"},children:t.category})]}),e.jsxs("div",{className:"p-5 flex flex-col flex-1",children:[e.jsx("h3",{className:"font-display font-bold text-slate-900 text-lg group-hover:text-primary transition-colors leading-snug mb-2",children:t.title}),e.jsx("p",{className:"text-slate-500 text-sm leading-relaxed line-clamp-2 mb-4 flex-1",children:t.excerpt}),e.jsxs("div",{className:"flex items-center justify-between pt-3 border-t border-slate-50",children:[e.jsxs("div",{className:"flex items-center gap-3 text-xs text-slate-400",children:[e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(y,{className:"h-3.5 w-3.5"}),t.publishDate]}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(w,{className:"h-3.5 w-3.5"}),t.readTime]})]}),e.jsxs("span",{className:"text-primary text-sm font-medium flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity",children:["Read ",e.jsx(v,{className:"h-3.5 w-3.5"})]})]})]})]})})}function q(){const[t,r]=i.useState("All"),[s,d]=i.useState("");i.useEffect(()=>{document.title="SEO Blog - Strategies, Guides, and Industry Insights";const a=document.querySelector('meta[name="description"]');a&&a.setAttribute("content","Read actionable SEO strategies, AI search trends, and technical guides. Updated regularly with insights on local SEO, migrations, and search algorithms.")},[]);const m={"@context":"https://schema.org","@graph":[{"@type":"Blog","@id":"https://searchministry.au/blog/#webpage",url:"https://searchministry.au/blog/",name:"SearchMinistry Media Blog",description:"Expert SEO insights, guides, and strategies from SearchMinistry Media.",publisher:{"@id":"https://searchministry.au/#organization"},isPartOf:{"@id":"https://searchministry.au/#website"}},{"@type":"CollectionPage",url:"https://searchministry.au/blog/",name:"SEO Blog - SearchMinistry Media",description:"Expert SEO insights, guides, and strategies from SearchMinistry Media. Learn about local SEO, AI search, technical SEO, and more.",isPartOf:{"@id":"https://searchministry.au/#website"}}]},l=x.filter(a=>a.featured).slice(0,3),n=x.filter(a=>{const o=t==="All"||a.category===t,g=s===""||a.title.toLowerCase().includes(s.toLowerCase())||a.excerpt.toLowerCase().includes(s.toLowerCase());return o&&g}),u=n.filter(a=>!l.includes(a));return e.jsxs("div",{className:"min-h-screen bg-white",children:[e.jsx(E,{}),e.jsx("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(m)}}),e.jsxs("section",{className:"relative overflow-hidden",style:{background:"linear-gradient(135deg, hsl(168 76% 97%) 0%, hsl(199 89% 96%) 50%, hsl(168 76% 95%) 100%)"},children:[e.jsxs("div",{className:"max-w-6xl mx-auto px-6 pt-4 pb-8 relative z-10",children:[e.jsxs("div",{className:"max-w-2xl",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[e.jsx("div",{className:"w-8 h-0.5 bg-primary rounded-full"}),e.jsx("span",{className:"text-primary text-sm font-semibold tracking-wide uppercase",children:"Blog"})]}),e.jsx("h1",{className:"font-display text-3xl md:text-4xl font-bold text-slate-900 leading-tight mb-3",children:"SEO Insights & Expert Strategies"}),e.jsx("p",{className:"text-slate-600 text-base leading-relaxed",children:"Practical advice, in-depth guides, and the latest thinking on search engine optimisation from the SearchMinistry team."})]}),e.jsx("div",{className:"mt-5 max-w-md",children:e.jsxs("div",{className:"relative",children:[e.jsx(p,{className:"absolute left-4 top-1/2 -translate-y-1/2 h-4 w-4 text-slate-400"}),e.jsx("input",{type:"text",placeholder:"Search articles...",value:s,onChange:a=>d(a.target.value),"data-testid":"input-blog-search",className:"w-full pl-11 pr-4 py-3 rounded-xl bg-white border border-slate-200 text-sm text-slate-800 placeholder:text-slate-400 focus:outline-none focus:ring-2 focus:ring-primary/30 focus:border-primary transition-all shadow-sm"})]})})]}),e.jsx("div",{className:"absolute -bottom-1 left-0 right-0",children:e.jsx("svg",{viewBox:"0 0 1440 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"w-full",children:e.jsx("path",{d:"M0 40V20C360 0 720 0 1080 20C1260 30 1350 35 1440 40H0Z",fill:"white"})})})]}),e.jsx("section",{className:"max-w-6xl mx-auto px-6 pt-2 pb-4",children:e.jsxs("div",{className:"flex items-center gap-2 overflow-x-auto pb-2 scrollbar-hide",children:[e.jsx(O,{className:"h-4 w-4 text-slate-400 shrink-0"}),k.map(a=>e.jsx(I,{label:a,active:t===a,onClick:()=>r(a)},a))]})}),t==="All"&&s===""&&e.jsxs("section",{className:"max-w-6xl mx-auto px-6 py-8",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[e.jsx("h2",{className:"font-display text-xl font-bold text-slate-900",children:"Featured Articles"}),e.jsx("div",{className:"flex-1 h-px bg-slate-100"})]}),e.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6",children:l.map((a,o)=>e.jsx(G,{post:a,index:o},a.slug))})]}),e.jsxs("section",{className:"max-w-6xl mx-auto px-6 py-8 pb-20",children:[(t!=="All"||s!=="")&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[e.jsx("h2",{className:"font-display text-xl font-bold text-slate-900",children:s?`Results for "${s}"`:t}),e.jsx("div",{className:"flex-1 h-px bg-slate-100"}),e.jsxs("span",{className:"text-sm text-slate-400",children:[n.length," article",n.length!==1?"s":""]})]}),n.length===0&&e.jsxs("div",{className:"text-center py-20",children:[e.jsx("div",{className:"w-16 h-16 rounded-full bg-slate-100 flex items-center justify-center mx-auto mb-4",children:e.jsx(p,{className:"h-7 w-7 text-slate-300"})}),e.jsx("h3",{className:"text-lg font-semibold text-slate-700 mb-2",children:"No articles found"}),e.jsx("p",{className:"text-slate-500 text-sm",children:"Try adjusting your search or selecting a different category."}),e.jsx("button",{onClick:()=>{r("All"),d("")},className:"mt-4 text-primary text-sm font-medium hover:underline","data-testid":"button-clear-filters",children:"Clear all filters"})]}),e.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6",children:n.map(a=>e.jsx(b,{post:a},a.slug))})]}),t==="All"&&s===""&&u.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[e.jsx("h2",{className:"font-display text-xl font-bold text-slate-900",children:"All Articles"}),e.jsx("div",{className:"flex-1 h-px bg-slate-100"})]}),e.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6",children:u.map(a=>e.jsx(b,{post:a},a.slug))})]})]}),e.jsx(C,{}),e.jsx(A,{})]})}
1export{q as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.