diff --git a/apps/web/src/app/[locale]/page.tsx b/apps/web/src/app/[locale]/page.tsx
index 6edce53..6a5cc97 100644
--- a/apps/web/src/app/[locale]/page.tsx
+++ b/apps/web/src/app/[locale]/page.tsx
@@ -739,7 +739,7 @@ function FinalCta() {
{/* Pull-quote in alto, indentata */}
-
+
{t('ctaSectionBody')}
@@ -887,38 +887,75 @@ function DashboardHero({
accent === 'oliva' ? 'text-oliva' : accent === 'pomodoro' ? 'text-pomodoro' : 'text-oro';
const tintGrad =
accent === 'oliva'
- ? 'linear-gradient(135deg, hsl(var(--oliva) / 0.18) 0%, hsl(var(--carta-light)) 70%)'
+ ? 'linear-gradient(135deg, hsl(var(--oliva) / 0.32) 0%, hsl(var(--oro) / 0.18) 50%, hsl(var(--carta-light)) 90%)'
: accent === 'pomodoro'
- ? 'linear-gradient(135deg, hsl(var(--pomodoro) / 0.18) 0%, hsl(var(--carta-light)) 70%)'
- : 'linear-gradient(135deg, hsl(var(--oro) / 0.18) 0%, hsl(var(--carta-light)) 70%)';
+ ? 'linear-gradient(135deg, hsl(var(--pomodoro) / 0.32) 0%, hsl(var(--oro) / 0.18) 50%, hsl(var(--carta-light)) 90%)'
+ : 'linear-gradient(135deg, hsl(var(--oro) / 0.32) 0%, hsl(var(--pomodoro) / 0.15) 50%, hsl(var(--carta-light)) 90%)';
return (
-
- {eyebrow}
-
-
- {title}
-
-
- โ
+
+
+
+
{eyebrow}
+
+ 7 giorni ยท 21 pasti
+
+
+ {title}
+ .
+
+
+
+ Il menu adattato al tuo BMR, alle tue esclusioni e ai tempi che hai in cucina.
+
+
+ โ
+
+
+
);
}
+/** Art decorativa "piatto stilizzato" per la card hero. Tre macchie di
+ * colore che richiamano gli ingredienti, ruotate in modo asimmetrico. */
+function PlateArt({ accent }: { accent: 'oliva' | 'pomodoro' | 'oro' }) {
+ return (
+
+ );
+}
+
function NavItem({
href,
label,
@@ -934,22 +971,27 @@ function NavItem({
-
- {chapter ? (
-
- {chapter}
-
- ) : null}
-
- {eyebrow}
- {label}
+ {chapter ? (
+
+ {chapter}
+
+ ) : null}
+
+
+ {eyebrow}
+
+
+ {label}
โ
@@ -978,13 +1020,13 @@ function TrialBanner({ billing }: { billing: BillingStatus | null }) {
/>
-
{t('trialBannerTitle')}
+
{t('trialBannerTitle')}
{derived.trialDaysRemaining}{' '}
{derived.trialDaysRemaining === 1 ? 'giorno' : 'giorni'}
.
-
+
Tutto sbloccato fino al {endsAt}. Poi serve un abbonamento per generare nuovi piani.
@@ -1011,12 +1053,12 @@ function TrialBanner({ billing }: { billing: BillingStatus | null }) {
/>
-
{t('trialEndedBannerTitle')}
+
{t('trialEndedBannerTitle')}
{t('trialEndedBannerTitle')}
.
-
+
{t('trialEndedBannerBody')}