@@ -87,6 +87,41 @@ const TheMorph = dynamic(
8787 { ssr : false , loading : ( ) => < SectionLoader label = "The Morph" /> }
8888) ;
8989
90+ const TheOrbit = dynamic (
91+ ( ) => import ( "@/components/foodshot/orbit-carousel" ) . then ( ( m ) => m . OrbitCarousel ) ,
92+ { ssr : false , loading : ( ) => < SectionLoader label = "The Orbit" /> }
93+ ) ;
94+
95+ const TheCurtain = dynamic (
96+ ( ) => import ( "@/components/foodshot/curtain-reveal" ) . then ( ( m ) => m . CurtainReveal ) ,
97+ { ssr : false , loading : ( ) => < SectionLoader label = "The Curtain" /> }
98+ ) ;
99+
100+ const TheFlip = dynamic (
101+ ( ) => import ( "@/components/foodshot/flip-card" ) . then ( ( m ) => m . FlipCard ) ,
102+ { ssr : false , loading : ( ) => < SectionLoader label = "The Flip" /> }
103+ ) ;
104+
105+ const TheAccordion = dynamic (
106+ ( ) => import ( "@/components/foodshot/accordion-panels" ) . then ( ( m ) => m . AccordionPanels ) ,
107+ { ssr : false , loading : ( ) => < SectionLoader label = "The Accordion" /> }
108+ ) ;
109+
110+ const TheSpotlightBeam = dynamic (
111+ ( ) => import ( "@/components/foodshot/spotlight-beam" ) . then ( ( m ) => m . SpotlightBeam ) ,
112+ { ssr : false , loading : ( ) => < SectionLoader label = "The Spotlight" /> }
113+ ) ;
114+
115+ const TheMosaic = dynamic (
116+ ( ) => import ( "@/components/foodshot/mosaic-grid" ) . then ( ( m ) => m . MosaicGrid ) ,
117+ { ssr : false , loading : ( ) => < SectionLoader label = "The Mosaic" /> }
118+ ) ;
119+
120+ const TheScramble = dynamic (
121+ ( ) => import ( "@/components/foodshot/scramble-reveal" ) . then ( ( m ) => m . ScrambleReveal ) ,
122+ { ssr : false , loading : ( ) => < SectionLoader label = "The Scramble" /> }
123+ ) ;
124+
90125function SectionLoader ( { label } : { label : string } ) {
91126 return (
92127 < div className = "w-full min-h-screen flex items-center justify-center bg-[#0a0a0a]" >
@@ -115,6 +150,13 @@ const concepts = [
115150 { id : "the-filmstrip" , label : "The Filmstrip" , desc : "Cinema Reel" } ,
116151 { id : "the-counter" , label : "The Counter" , desc : "Revenue Impact" } ,
117152 { id : "the-morph" , label : "The Morph" , desc : "Circle Reveal" } ,
153+ { id : "the-orbit" , label : "The Orbit" , desc : "3D Carousel" } ,
154+ { id : "the-curtain" , label : "The Curtain" , desc : "Theatrical Reveal" } ,
155+ { id : "the-flip" , label : "The Flip" , desc : "Card Flip" } ,
156+ { id : "the-accordion" , label : "The Accordion" , desc : "Expandable Panels" } ,
157+ { id : "the-spotlight-beam" , label : "The Spotlight" , desc : "Light Beam" } ,
158+ { id : "the-mosaic" , label : "The Mosaic" , desc : "Tile Assembly" } ,
159+ { id : "the-scramble" , label : "The Scramble" , desc : "Pixel Resolve" } ,
118160] ;
119161
120162export default function FoodShotShowcase ( ) {
@@ -161,7 +203,7 @@ export default function FoodShotShowcase() {
161203 className = "relative z-10 text-center max-w-3xl"
162204 >
163205 < span className = "inline-block px-4 py-1.5 text-xs font-mono uppercase tracking-wider rounded-full bg-amber-500/10 border border-amber-500/20 text-amber-400 mb-8" >
164- 16 Hero Concepts for FoodShot
206+ 23 Hero Concepts for FoodShot
165207 </ span >
166208 < h1 className = "text-5xl md:text-8xl font-bold mb-6 leading-[1.05] tracking-tight" >
167209 < span className = "bg-gradient-to-r from-amber-400 via-orange-400 to-red-400 bg-clip-text text-transparent" >
@@ -173,7 +215,7 @@ export default function FoodShotShowcase() {
173215 </ span >
174216 </ h1 >
175217 < p className = "text-zinc-500 text-lg max-w-xl mx-auto mb-10" >
176- 16 distinct visual experiences, each selling FoodShot from a unique angle.
218+ 23 distinct visual experiences, each selling FoodShot from a unique angle.
177219 Real restaurant photos. No stock imagery.
178220 </ p >
179221
@@ -318,13 +360,63 @@ export default function FoodShotShowcase() {
318360 < div id = "the-morph" >
319361 < TheMorph />
320362 </ div >
363+
364+ { /* === BATCH 4: 7 MORE CONCEPTS === */ }
365+ < div className = "relative py-20 px-6" >
366+ < div className = "max-w-3xl mx-auto text-center" >
367+ < div className = "h-px bg-gradient-to-r from-transparent via-amber-500/30 to-transparent mb-12" />
368+ < span className = "inline-block px-4 py-1.5 text-xs font-mono uppercase tracking-wider rounded-full bg-amber-500/10 border border-amber-500/20 text-amber-400" >
369+ 7 More Concepts
370+ </ span >
371+ </ div >
372+ </ div >
373+
374+ < div id = "the-orbit" >
375+ < TheOrbit />
376+ </ div >
377+
378+ < div className = "h-px bg-gradient-to-r from-transparent via-amber-500/10 to-transparent" />
379+
380+ < div id = "the-curtain" >
381+ < TheCurtain />
382+ </ div >
383+
384+ < div className = "h-px bg-gradient-to-r from-transparent via-amber-500/10 to-transparent" />
385+
386+ < div id = "the-flip" >
387+ < TheFlip />
388+ </ div >
389+
390+ < div className = "h-px bg-gradient-to-r from-transparent via-amber-500/10 to-transparent" />
391+
392+ < div id = "the-accordion" >
393+ < TheAccordion />
394+ </ div >
395+
396+ < div className = "h-px bg-gradient-to-r from-transparent via-amber-500/10 to-transparent" />
397+
398+ < div id = "the-spotlight-beam" >
399+ < TheSpotlightBeam />
400+ </ div >
401+
402+ < div className = "h-px bg-gradient-to-r from-transparent via-amber-500/10 to-transparent" />
403+
404+ < div id = "the-mosaic" >
405+ < TheMosaic />
406+ </ div >
407+
408+ < div className = "h-px bg-gradient-to-r from-transparent via-amber-500/10 to-transparent" />
409+
410+ < div id = "the-scramble" >
411+ < TheScramble />
412+ </ div >
321413 </ div >
322414
323415 { /* Footer */ }
324416 < footer className = "relative z-10 py-16 px-6 border-t border-zinc-900" >
325417 < div className = "max-w-3xl mx-auto text-center" >
326418 < p className = "text-zinc-600 text-sm mb-6" >
327- 16 concepts • Real restaurant photography • Contained images at proper resolution
419+ 23 concepts • Real restaurant photography • Contained images at proper resolution
328420 </ p >
329421 < div className = "flex gap-4 justify-center" >
330422 < Link
0 commit comments