EIDEN
00%
EIDEN Group
Lunja Village Vibes

10 · Web design

Lunja Village Vibes

Ta parenthèse ensoleillée à Imi Ouaddar.

Art direction · Design system · Web design & development · Motion design · Responsive engineering

The intent

Coral, teal and chillout yellow on linen — three loud colours held together by space.

Ta parenthèse ensoleillée à Imi Ouaddar — thirty minutes from Agadir, apartments and bungalows, pools, live music and a genuinely good crowd.

This is the loudest member of the Lunja family and the palette says so: coral against teal against a near-fluorescent yellow, all sitting on warm linen. Three saturated colours that should not work together, held apart by generous linen space and a heavy condensed display face.

A hand-lettered script runs underneath as the human voice — used for asides and captions only, never for anything a guest has to read to book.

Client
Lunja Village Vibes
Year
2026
Discipline
Web design
Stack
React · TanStack Start · Tailwind v4 · CSS animation · Vercel

Live build

Desktop & mobile

Both frames below are the real deployed site, running live. Scroll inside them.

Open live site
Desktop · 1440
lunja-village-vibes.vercel.app
Lunja Village Vibes   desktop
Mobile · 390
Lunja Village Vibes   mobile
  • 01

    Desktop runs asymmetric colour-blocked sections with overlapping imagery.

  • 02

    Tablet flattens the overlaps into a stacked rhythm, keeping the colour blocks full-bleed.

  • 03

    Mobile turns the stay cards into a snap carousel and shrinks the display type to a two-line maximum.

Design system

Palette & type

  • Coral

    #F25C2A

    Primary

  • Teal

    #1E9E8A

    Secondary

  • Teal deep

    #0F4A42

    Dark sections

  • Yellow

    #FBF304

    Accent

  • Linen

    #F4EFE4

    Page ground

  • Ink

    #141010

    Type

  • DisplayBarlow CondensedWeight 900, condensed, set enormous. Headlines are meant to be read from across a beach.
  • ScriptCaveat BrushThe village's handwriting — captions, asides, and the occasional arrow.
  • BodyDM SansQuiet, legible, and deliberately unremarkable so the colour does the talking.

Motion

How it moves

  1. 01

    Ken Burns hero

    The hero image runs a slow scale from 1.12 to 1.18 — never resting at 1, so the frame always feels alive under the type.

  2. 02

    Marquee band

    A continuous yellow marquee of village words runs between sections on a pure CSS loop, no scroll listener and no JavaScript.

  3. 03

    Drift and float

    Decorative elements wander on drift and float-y — a few pixels of translate plus a couple of degrees of rotate, offset per element so nothing beats in sync.

  4. 04

    Pop-in menu

    Navigation items enter on menu-item-in with a per-item delay, and the gallery opens on lightbox-pop. The whole site animates in CSS keyframes — there is no motion library in the bundle.

Page architecture

  1. 01Hero — LUNJA VILLAGE, ouvert 7/7, à 5 min de l'océan
  2. 02Imi Ouaddar marquee band, open 7/7
  3. 03Piscines et jardins
  4. 04Live music
  5. 05Surf & yoga
  6. 06Les séjours, B&B inclus
  7. 07CHILLOUT — the bar, open 7/7
  8. 08Résa express — réponse sous 24 h

Shipped

Ta parenthèse ensoleillée à Imi Ouaddar.

Visit Lunja Village Vibes