polish: nav scroll threshold, footer cleanup, hero gradient

- Nav: trigger solid background at 10px scroll (was 100px) to prevent logo/text overlap
- Footer: copyright uses legal name "LetsBe Solutions LLC"
- Footer: location changed to "American-founded. Serving the Côte d'Azur and beyond."
- Footer: remove GitHub social link (no public GitHub)
- Hero: smooth gradient fade into trust bar section (no hard color gap)
- Services: "SEO & Digital Marketing" replaces "SEO & Performance"

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-26 16:40:15 +01:00
parent 683e0b3e43
commit 4aa357a999
6 changed files with 11 additions and 16 deletions

View File

@@ -51,11 +51,6 @@ const SOCIAL_LINKS = [
href: 'https://www.linkedin.com/company/letsbe-digital', href: 'https://www.linkedin.com/company/letsbe-digital',
Icon: LinkedInIcon, Icon: LinkedInIcon,
}, },
{
label: 'GitHub',
href: 'https://github.com/letsbe-digital',
Icon: GitHubIcon,
},
{ {
label: 'X', label: 'X',
href: 'https://x.com/letsbe_digital', href: 'https://x.com/letsbe_digital',
@@ -208,7 +203,7 @@ export default function Footer() {
<div className="mx-auto max-w-7xl px-6 lg:px-8 py-6"> <div className="mx-auto max-w-7xl px-6 lg:px-8 py-6">
<div className="flex flex-col sm:flex-row items-start sm:items-center justify-between gap-3"> <div className="flex flex-col sm:flex-row items-start sm:items-center justify-between gap-3">
<p className="text-xs text-on-surface/35"> <p className="text-xs text-on-surface/35">
© {currentYear} LetsBe. Digital Studio © {currentYear} LetsBe Solutions LLC
</p> </p>
<ul className="flex items-center gap-5" role="list"> <ul className="flex items-center gap-5" role="list">
<li> <li>

View File

@@ -99,7 +99,7 @@ export default function Nav() {
const t = useTranslations('nav') const t = useTranslations('nav')
const pathname = usePathname() const pathname = usePathname()
const router = useRouter() const router = useRouter()
const scrolled = useScrolled(100) const scrolled = useScrolled(10)
const [mobileOpen, setMobileOpen] = useState(false) const [mobileOpen, setMobileOpen] = useState(false)
// Derive current locale from pathname (next-intl with localePrefix: 'as-needed') // Derive current locale from pathname (next-intl with localePrefix: 'as-needed')

View File

@@ -341,10 +341,10 @@ export default function Hero() {
{/* ─── Bottom fade into next section ────────────────────────────── */} {/* ─── Bottom fade into next section ────────────────────────────── */}
<div <div
className="absolute bottom-0 left-0 right-0 h-28 pointer-events-none z-10" className="absolute bottom-0 left-0 right-0 h-40 pointer-events-none z-10"
style={{ style={{
background: background:
'linear-gradient(to bottom, transparent, rgba(248,249,250,0.65))', 'linear-gradient(to bottom, transparent, #f3f4f5)',
}} }}
aria-hidden="true" aria-hidden="true"
/> />

View File

@@ -113,11 +113,11 @@ export default function TrustBar() {
aria-label="Trust indicators" aria-label="Trust indicators"
className="relative bg-surface-low py-12" className="relative bg-surface-low py-12"
> >
{/* Gradient bridge — blends hero surface-high into this section */} {/* Gradient bridge — blends hero into this section */}
<div <div
className="absolute top-0 left-0 right-0 h-16 pointer-events-none" className="absolute top-0 left-0 right-0 h-24 pointer-events-none"
style={{ style={{
background: 'linear-gradient(to bottom, #ffffff, transparent)', background: 'linear-gradient(to bottom, #f8f9fa, transparent)',
}} }}
aria-hidden="true" aria-hidden="true"
/> />

View File

@@ -39,7 +39,7 @@
"title": "Design. Build. Run.", "title": "Design. Build. Run.",
"web": { "web": {
"title": "Websites & Web Apps", "title": "Websites & Web Apps",
"features": ["Custom Web Design", "Responsive Development", "SEO & Performance", "Content Management"] "features": ["Custom Web Design", "Responsive Development", "SEO & Digital Marketing", "Content Management"]
}, },
"systems": { "systems": {
"title": "Custom Software", "title": "Custom Software",
@@ -181,7 +181,7 @@
}, },
"footer": { "footer": {
"tagline": "Custom websites, software, and infrastructure for businesses that want to own their digital future.", "tagline": "Custom websites, software, and infrastructure for businesses that want to own their digital future.",
"location": "Côte d'Azur, France", "location": "American-founded. Serving the Côte d'Azur and beyond.",
"services": "Services", "services": "Services",
"studio": "Studio", "studio": "Studio",
"connect": "Connect", "connect": "Connect",

View File

@@ -39,7 +39,7 @@
"title": "Concevoir. Développer. Héberger.", "title": "Concevoir. Développer. Héberger.",
"web": { "web": {
"title": "Sites Web & Applications", "title": "Sites Web & Applications",
"features": ["Design Web Sur Mesure", "Développement Responsive", "SEO & Performance", "Gestion de Contenu"] "features": ["Design Web Sur Mesure", "Développement Responsive", "SEO & Marketing Digital", "Gestion de Contenu"]
}, },
"systems": { "systems": {
"title": "Logiciels Sur Mesure", "title": "Logiciels Sur Mesure",
@@ -181,7 +181,7 @@
}, },
"footer": { "footer": {
"tagline": "Sites web, logiciels et infrastructure sur mesure pour les entreprises qui veulent maîtriser leur avenir digital.", "tagline": "Sites web, logiciels et infrastructure sur mesure pour les entreprises qui veulent maîtriser leur avenir digital.",
"location": "Côte d'Azur, France", "location": "Fondé aux États-Unis. Au service de la Côte d'Azur et au-delà.",
"services": "Services", "services": "Services",
"studio": "Studio", "studio": "Studio",
"connect": "Contact", "connect": "Contact",