<p><p>&lt;p&gt;&amp;lt;p&amp;gt;portfolio.blade.php — completely rewritten. The 7 hardcoded static tabs are gone. &amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;Now it renders one "Show All" tab with every active portfolio, then one tab per service &amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;that has portfolios. Each card links to route('portfolio-details', $p-&amp;amp;gt;slug) and shows the&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt; real cover image with a fallback.&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;portfolio-details.blade.php — fully dynamic. Shows the real cover image, description&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt; (rendered as HTML from Quill), metadata sidebar (service, client, location, published date), &amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;gallery grid, project summary, tags, and working prev/next navigation between items.&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;welcome.blade.php — the 4 hardcoded swiper slides replaced with @forelse &amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;\($homePortfolios as $p) loop. Falls back to a single placeholder slide if no &amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;portfolios exist yet.&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/p&amp;gt;&lt;/p&gt;</p></p>