42 Commits

Author SHA1 Message Date
aeefaddf99 Update src/app/page.tsx 2026-04-22 22:04:26 +00:00
dc33c2cd8b Merge version_23 into main
Merge version_23 into main
2026-04-22 22:02:41 +00:00
5c143bb82d Update src/app/styles/variables.css 2026-04-22 22:02:35 +00:00
427b0079b4 Update src/app/page.tsx 2026-04-22 22:02:34 +00:00
619c9b31b6 Merge version_22 into main
Merge version_22 into main
2026-04-22 21:47:36 +00:00
31d59ac222 Update src/app/styles/variables.css 2026-04-22 21:47:33 +00:00
c9253ea81e Update src/app/page.tsx 2026-04-22 21:47:33 +00:00
7c55e4c640 Merge version_21 into main
Merge version_21 into main
2026-04-22 21:45:30 +00:00
e51f64b83a Update src/app/page.tsx 2026-04-22 21:45:27 +00:00
3a071fa00d Merge version_20 into main
Merge version_20 into main
2026-04-22 21:18:42 +00:00
423f8f104c Update src/app/page.tsx 2026-04-22 21:18:39 +00:00
8f7526e75e Merge version_19 into main
Merge version_19 into main
2026-04-22 21:16:42 +00:00
20d1e70b23 Update src/app/page.tsx 2026-04-22 21:16:36 +00:00
0e0aed00da Merge version_18 into main
Merge version_18 into main
2026-04-21 22:27:30 +00:00
dd85b25ce6 Update src/app/page.tsx 2026-04-21 22:27:27 +00:00
2998d23fed Update src/app/layout.tsx 2026-04-21 22:27:26 +00:00
d123a631ae Merge version_17 into main
Merge version_17 into main
2026-04-21 22:26:49 +00:00
9062919b44 Update src/app/page.tsx 2026-04-21 22:26:46 +00:00
26874b730a Merge version_16 into main
Merge version_16 into main
2026-04-21 22:26:09 +00:00
a39b5d7346 Update src/app/page.tsx 2026-04-21 22:26:03 +00:00
3e69d2f9a1 Merge version_16 into main
Merge version_16 into main
2026-04-21 22:25:37 +00:00
92affd5a4b Update src/app/page.tsx 2026-04-21 22:25:34 +00:00
84a062ad19 Merge version_15 into main
Merge version_15 into main
2026-04-21 22:24:56 +00:00
9add656010 Update src/app/page.tsx 2026-04-21 22:24:53 +00:00
7836641365 Merge version_14 into main
Merge version_14 into main
2026-04-21 22:24:29 +00:00
aa45246806 Update src/app/page.tsx 2026-04-21 22:24:26 +00:00
00a237312e Merge version_14 into main
Merge version_14 into main
2026-04-21 22:24:05 +00:00
6a657f7411 Update src/app/page.tsx 2026-04-21 22:24:02 +00:00
8788418c21 Merge version_14 into main
Merge version_14 into main
2026-04-21 22:23:38 +00:00
7b397430f6 Update src/app/page.tsx 2026-04-21 22:23:31 +00:00
cc2fd5a074 Merge version_13 into main
Merge version_13 into main
2026-04-21 22:21:27 +00:00
eb01e4e853 Update src/app/page.tsx 2026-04-21 22:21:24 +00:00
1932072545 Merge version_12 into main
Merge version_12 into main
2026-04-21 22:20:01 +00:00
b18c7306ce Update src/app/styles/variables.css 2026-04-21 22:19:58 +00:00
d1f3cc9542 Update src/app/page.tsx 2026-04-21 22:19:57 +00:00
f7fb96b162 Merge version_11 into main
Merge version_11 into main
2026-04-21 22:18:12 +00:00
b050d1db39 Update src/app/page.tsx 2026-04-21 22:18:06 +00:00
d2a9f38860 Merge version_11 into main
Merge version_11 into main
2026-04-21 22:17:40 +00:00
14544b77ff Update src/app/styles/variables.css 2026-04-21 22:17:37 +00:00
b1dfc3d368 Update src/app/styles/base.css 2026-04-21 22:17:36 +00:00
fc84762825 Update src/app/page.tsx 2026-04-21 22:17:36 +00:00
de249c6692 Merge version_10 into main
Merge version_10 into main
2026-04-18 23:00:42 +00:00
4 changed files with 101 additions and 59 deletions

View File

@@ -10,8 +10,8 @@ import { Figtree } from "next/font/google";
export const metadata: Metadata = {
title: 'FPH Production | Direzionale di Cinema per Brand',
description: 'FPH Production è uno studio di regia che trasforma brand heritage e lifestyle in cinema puro. Filmmaking, non video content.',
title: 'FPH — Brand Film & Video Luxury B2B | Michele Floridia',
description: 'Regista e producer freelance specializzato in Brand Film cinematografici, video fiere e campagne ADV per il mercato luxury e B2B italiano.',
openGraph: {
"siteName": "FPH Production",
"type": "website"

View File

@@ -2,13 +2,15 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterBase from '@/components/sections/footer/FooterBase';
import HeroSplit from '@/components/sections/hero/HeroSplit';
import ContactCenter from '@/components/sections/contact/ContactCenter';
import FooterMedia from '@/components/sections/footer/FooterMedia';
import HeroLogo from '@/components/sections/hero/HeroLogo';
import MediaAbout from '@/components/sections/about/MediaAbout';
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import SocialProofOne from '@/components/sections/socialProof/SocialProofOne';
import TestimonialCardSix from '@/components/sections/testimonial/TestimonialCardSix';
import FeatureCardMedia from '@/components/sections/feature/FeatureCardMedia';
import MetricSplitMediaAbout from '@/components/sections/about/MetricSplitMediaAbout';
import TimelineHorizontalCardStack from '@/components/cardStack/layouts/timelines/TimelineHorizontalCardStack';
export default function LandingPage() {
return (
@@ -30,80 +32,120 @@ export default function LandingPage() {
navItems={[
{ name: "Philosophy", id: "about" },
{ name: "Services", id: "services" },
{ name: "Come Lavoro", id: "how-i-work" },
{ name: "Clients", id: "social-proof" },
{ name: "Contact", id: "contact" },
]}
brandName="FPH Production — Michele Floridia"
brandName="FPH — Michele Floridia"
/>
</div>
<div id="hero" data-section="hero">
<HeroSplit
background={{ variant: "radial-gradient" }}
title="Film per brand che sanno chi sono"
description="Brand Film · Heritage Campaign · Event Direction — Per i brand italiani che vogliono essere visti, non solo scorrere. Convertiamo i tuoi spettatori in clienti fedeli attraverso una narrazione cinematografica che valorizza la tua identità. Studio indipendente — un solo autore dietro ogni progetto. Per produzioni complesse, seleziono collaboratori scelti caso per caso: i migliori per ogni visione, non un team fisso."
buttons={[{ text: "Parliamone", href: "#contact" }]}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CX1xH7y0jxZ0fhv28YS97mOKD2/uploaded-1776553036600-uldveqyn.mp4"
mediaAnimation="blur-reveal"
/>
<HeroLogo
logoText="REGIA E PRODUZIONE VIDEO"
description="Film per brand che sanno chi sono. Brand Film, fiere e campagne B2B & luxury. Una sola regia, dal concept all'on-air."
buttons={[{ text: "PRENOTA UNA CALL GRATUITA", href: "#contact" }]}
videoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CX1xH7y0jxZ0fhv28YS97mOKD2/uploaded-1776553036600-uldveqyn.mp4"
showDimOverlay={true}
className="min-h-screen"
descriptionClassName="text-white/90"
/>
</div>
<div id="about" data-section="about">
<MediaAbout
useInvertedBackground={true}
title="Michele Floridia — Filmmaker."
description="Michele Floridia — Filmmaker. Studio indipendente basato in Italia. Ogni progetto nasce da una visione unica e, quando serve, cresce con collaboratori selezionati: direttori della fotografia, sound designer, motion designer scelti progetto per progetto. Non un'agenzia. Non un collettivo fisso. Un autore con la rete giusta."
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CX1xH7y0jxZ0fhv28YS97mOKD2/director-michele-floridia-working-on-a-f-1776519373622-6bbe0844.png"
<div id="about-regia" data-section="about-regia">
<MetricSplitMediaAbout
tag="CHI SONO"
title="Una regia, dall'inizio alla fine."
description="Sono Michele Floridia, regista e producer. Il mio approccio alla produzione video si concentra sull'essenza della storia, trasformando visioni complesse in racconti visivi chiari e diretti. Credo in una collaborazione artigianale dove il regista diventa il punto di riferimento unico per il cliente, garantendo coerenza stilistica e cura maniacale per ogni frame."
metrics={[]}
mediaAnimation="blur-reveal"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CX1xH7y0jxZ0fhv28YS97mOKD2/director-michele-floridia-working-on-a-f-1776519373622-6bbe0844.png?_wi=1"
useInvertedBackground={false}
descriptionClassName="text-foreground/80"
/>
</div>
<div id="services" data-section="services">
<FeatureCardMedia
title="I nostri Servizi"
description="Soluzioni cinematografiche per il posizionamento del tuo brand."
tag="COSA FACCIO"
title="Tre linee di produzione"
description="Soluzioni su misura per ogni esigenza di comunicazione premium."
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
useInvertedBackground={true}
buttons={[{ text: "Costruiamo il pacchetto in call", href: "#contact" }]}
features={[
{ id: "s1", title: "Heritage Brand Film", description: "Italia ed Europa", tag: "Production" },
{ id: "s2", title: "Campaign Lifestyle", description: "Italia ed Europa", tag: "Campaign" },
{ id: "s3", title: "Event Direction", description: "On-site ovunque, su richiesta", tag: "Events" }
{ id: "s1", title: "BRAND FILM", description: "Narrazioni cinematografiche che definiscono l'identità e i valori del tuo brand.", tag: "Concept" },
{ id: "s2", title: "VIDEO FIERE & EVENTI", description: "Contenuti dinamici per far risaltare la tua presenza nelle occasioni più importanti.", tag: "Production" },
{ id: "s3", title: "CAMPAGNE ADV B2B & LUXURY", description: "Visual ad alto impatto studiati per il mercato B2B e il segmento lusso.", tag: "Campaign" }
]}
cardDescriptionClassName="text-white/80"
/>
</div>
<div id="how-i-work" data-section="how-i-work">
<TimelineHorizontalCardStack
title="Tre passaggi, zero sorprese."
description="Il mio metodo garantisce qualità e tempi certi in tre passaggi chiari."
tag="COME LAVORO"
textboxLayout="default"
useInvertedBackground={false}
buttons={[{ text: "PRENOTA LA CALL GRATUITA", href: "#contact" }]}
>
{/* Sticky scroll integration point */}
<div className="space-y-32 py-10">
<div className="sticky top-20">01 CALL Scoperta e obiettivi.</div>
<div className="sticky top-20">02 PLAN Strategia e moodboard.</div>
<div className="sticky top-20">03 CREATE Produzione e delivery.</div>
</div>
</TimelineHorizontalCardStack>
</div>
<div id="about" data-section="about">
<MediaAbout
useInvertedBackground={true}
title="FPH Directing Studio."
description="FPH nasce come studio di regia boutique focalizzato sull'autenticità. Il nostro obiettivo è tradurre l'heritage e la complessità manifatturiera in linguaggio visivo contemporaneo. Credo che ogni progetto sia una storia a sé: gestisco personalmente ogni fase della produzione per garantire che l'identità del cliente resti il cuore pulsante di ogni immagine."
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CX1xH7y0jxZ0fhv28YS97mOKD2/director-michele-floridia-working-on-a-f-1776519373622-6bbe0844.png?_wi=2"
className="bg-card text-foreground"
descriptionClassName="text-white/80"
/>
</div>
<div id="social-proof" data-section="social-proof">
<SocialProofOne
title="Partner in visione"
description="Collaborazioni basate su identità, narrazione e risultati."
names={["Sauvage & Sons", "Muc-Off", "Casa del Pellegrino", "Studio Balestracci Beltrami"]}
<TestimonialCardSix
title="Riconoscimenti e Fiducia"
description="Collaborazioni basate su visione, coerenza e risultati."
animationType="blur-reveal"
textboxLayout="default"
useInvertedBackground={false}
useInvertedBackground={true}
testimonials={[
{ id: "t1", name: "Partner Strategico", handle: "@client", testimonial: "La capacità di Michele di ascoltare il brand e tradurlo in immagini cinematografiche è rara. Il suo approccio trasforma la produzione in un processo di scoperta continua." }
]}
className="py-20 bg-background text-foreground"
/>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
useInvertedBackground={true}
title="Hai un progetto? Parliamone."
description="Niente brief infiniti. Una conversazione. Studio indipendente — disponibile in Italia e all'estero."
inputs={[
{ name: "name", type: "text", placeholder: "Nome", required: true },
{ name: "brand", type: "text", placeholder: "Brand", required: true },
]}
textarea={{ name: "message", placeholder: "Messaggio", rows: 4, required: true }}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CX1xH7y0jxZ0fhv28YS97mOKD2/anamorphic-cinematic-2-39-1-aspect-ratio-1776519529328-28dac220.png"
/>
<ContactCenter
tag="PARLIAMONE"
title="Prenota una sessione."
description="Una call conoscitiva di 20 minuti per dare forma alla tua visione."
background={{ variant: 'radial-gradient' }}
useInvertedBackground={true}
onSubmit={(email) => console.log(email)}
/>
</div>
<div id="footer" data-section="footer">
<FooterBase
columns={[
{ title: "Studio", items: [{ label: "Philosophy", href: "#about" }, { label: "Services", href: "#services" }, { label: "Clients", href: "#social-proof" }] },
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }] },
]}
logoText="FPH Production"
/>
<FooterMedia
logoText="FPH Directing Studio"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CX1xH7y0jxZ0fhv28YS97mOKD2/anamorphic-cinematic-2-39-1-aspect-ratio-1776519529328-28dac220.png?_wi=1"
columns={[
{ title: "Studio", items: [{ label: "Philosophy", href: "#about" }, { label: "Contatti", href: "#contact" }] }
]}
copyrightText="© 2025 FPH Production"
/>
</div>
</ReactLenis>
</ThemeProvider>

View File

@@ -11,7 +11,7 @@ html {
body {
background-color: var(--background);
color: var(--foreground);
font-family: var(--font-figtree), sans-serif;
font-family: var(--font-inter), sans-serif;
position: relative;
min-height: 100vh;
overscroll-behavior: none;
@@ -24,5 +24,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-figtree), sans-serif;
font-family: var(--font-libre-baskerville), serif;
}

View File

@@ -10,15 +10,15 @@
--accent: #ffffff;
--background-accent: #ffffff; */
--background: #0a0a0a;
--card: #1a1a1a;
--foreground: #ffffffe6;
--primary-cta: #e6e6e6;
--background: #F5F5F0;
--card: #0A0A0A;
--foreground: #0A0A0A;
--primary-cta: #D4AF37;
--primary-cta-text: #0a0a0a;
--secondary-cta: #1a1a1a;
--secondary-cta: #F5F5F0;
--secondary-cta-text: #ffffffe6;
--accent: #737373;
--background-accent: #737373;
--accent: #D4AF37;
--background-accent: #EBEBE5;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);