Bestow Restaurant
A vibrant food-ordering platform for premium restaurants, emphasizing quick WhatsApp-based transactions with a clean, accessible interface that celebrates culinary variety through categorical browsing and instant checkout.
Colors
Typography
- display
- fontFamily: Inter · fontSize: 60px · fontWeight: 700 · lineHeight: 68px · letterSpacing: -0.04em
- headline-lg
- fontFamily: Inter · fontSize: 40px · fontWeight: 600 · lineHeight: 48px · letterSpacing: -0.02em
- headline-md
- fontFamily: Inter · fontSize: 28px · fontWeight: 600 · lineHeight: 36px · letterSpacing: -0.01em
- title-lg
- fontFamily: Inter · fontSize: 20px · fontWeight: 600 · lineHeight: 28px · letterSpacing: 0em
- body-lg
- fontFamily: Inter · fontSize: 18px · fontWeight: 400 · lineHeight: 28px · letterSpacing: 0.02em
- body-md
- fontFamily: Inter · fontSize: 16px · fontWeight: 400 · lineHeight: 24px · letterSpacing: 0.01em
- label-md
- fontFamily: Inter · fontSize: 14px · fontWeight: 600 · lineHeight: 20px · letterSpacing: 0.01em
- label-sm
- fontFamily: Inter · fontSize: 12px · fontWeight: 500 · lineHeight: 16px · letterSpacing: 0.02em
Design guidance
Overview
Bestow is a premium restaurant ordering platform designed for food enthusiasts seeking instant gratification through WhatsApp-based commerce. The brand embodies 'Accessible Vitality'—a design philosophy that combines the energy of vibrant green accents (#38ad00) with clean, minimal surfaces to create an interface that feels both premium and approachable. The UI celebrates culinary diversity through categorical organization and rich imagery, transforming the friction of restaurant ordering into a delightful, friction-free experience. Voice: conversational yet authoritative, encouraging without being pushy. Example: 'Combo Deals—save more with our special combos. Order now, skip the hassle.'
Colors
The color system is anchored in a vivid, high-saturation primary green (#38ad00) that signals action, trust, and the freshness of food. This primary is deployed on all call-to-action buttons (height 48px, padding 12px 24px, border-radius 14px), category tabs, and interactive affordances. The secondary green (#25d366) reinforces WhatsApp integration and payment flows. Tertiary green (#04a12b) provides depth for hover and active states. The surface stack is pure white (#ffffff) with subtle gray containers (#e9ecef, #eeeeee) for layering and visual hierarchy. On-surface text is near-black (#1a1a1a) for maximum legibility at 16px body size. Error states use a warm red (#cb202d) for warnings and validation feedback. All surfaces maintain 1px borders in outline-variant (#d1d5db) to define edges
Typography
The type system uses Inter exclusively across all weights (400, 500, 600, 700) to maintain brand coherence and ensure crisp rendering on mobile and desktop. Display (60px, 700 weight, -0.04em tracking) anchors hero sections and restaurant names. Headline-lg (40px, 600 weight) introduces major sections. Headline-md (28px, 600 weight) titles category groups like 'Combo Deals'. Title-lg (20px, 600 weight) labels individual menu items. Body-lg (18px, 400 weight, 28px line-height) is reserved for descriptive copy and ingredient lists. Body-md (16px, 400 weight) is the default for UI labels and descriptions. Label-md (14px, 600 weight, 0.01em tracking) is used for button text and badges. Label-sm (12px, 500 weight, 0.02em tracking) appears on secondary labels and supplementary information. All t
Layout
The layout follows a 12-column grid with a max-width of 1280px, adapting fluidly from mobile (single column, 16px gutter) to desktop (multi-column, 24px gutter). The hero section spans full width with a 16:9 aspect ratio image and overlaid restaurant name and action buttons. The main content area uses a two-column layout: a 240px fixed left sidebar for category navigation (with 12px padding, 8px item spacing) and a fluid right column for menu items displayed in a 2–3 column grid on desktop, 1 column on mobile. Section separation uses lg spacing (40px) to create breathing room. Card padding is consistently 24px (md spacing), with 12px gaps between items. The sticky footer action bar (height 64px) contains primary and secondary CTAs, using md spacing (24px) for internal padding. Container ma
Elevation & Depth
Depth is achieved through a subtle shadow hierarchy and strategic use of background colors rather than aggressive drop shadows. Level 1 (Base): white surface (#ffffff) with no shadow, representing the default card state. Level 2 (Elevated): 0 4px 12px rgba(0, 0, 0, 0.1) shadow applied to interactive cards and modals, creating a gentle lift. Level 3 (Pressed/Hover): 0 4px 12px rgba(0, 0, 0, 0.1) with a 0 0 0 2px rgba(0, 0, 0, 0.2) focus ring for keyboard navigation. Focus states on buttons and inputs use a 3px inset shadow in primary color (rgba(56, 173, 0, 0.1)) to indicate active focus withou
Shapes
The shape system follows 'Soft-Technical Minimalism'—rounded corners that feel modern and approachable without sacrificing clarity. Buttons use lg radius (1rem / 16px) for primary and secondary actions, creating a friendly, inviting appearance. Cards and containers use md radius (0.75rem / 12px) for a balanced, professional look. Input fields use DEFAULT radius (0.5rem / 8px) for a tighter, more utilitarian feel. Chips and badges use full radius (9999px) to emphasize their role as discrete, self-contained elements. The hero section image uses xl radius (1.5rem / 24px) at the bottom to soften t
Components
Action Elements Primary buttons (button-primary) use #38ad00 background with white text, 14px Inter 700, 48px height, 12px 24px padding, and 14px border-radius. On hover, the background darkens to #2e7d32 with a 0 4px 12px rgba(56, 173, 0, 0.2) shadow and a 200ms transition. On active/pressed, the background becomes #1b5e20 with no shadow. Focus states add a 3px inset ring in rgba(56, 173, 0, 0.3). Secondary buttons (button-secondary) use transparent background with a 2px solid #38ad00 border, #38ad00 text, and the same sizing. On hover, the background becomes #c8e6c9 (primary-container) with #1b5e20 text. Ghost buttons (button-ghost) use transparent background with #6c757d text; on hover, they shift to #e9ecef background with #1a1a1a text.
Containers & Surfaces Cards (card) use w
Do's and Don'ts
**Do**
- Do use primary green (#38ad00) exclusively for primary CTAs, category selection, and confirmation states—never for warnings or errors.
- Do maintain 48px minimum height for all touch targets (buttons, list items) to ensure mobile accessibility.
- Do apply the 0 4px 12px rgba(0, 0, 0, 0.1) shadow only to elevated surfaces (cards, modals); use borders for flat elements.
- Do use Inter 600 weight for all labels and button text; reserve 400 weight for body copy and descriptions.
- Do preserve 40px (lg spacing) between major sections to create visual breathing room and reduce cognitive load.
**Don't**
- Don't use secondary green (#25d366) or tertiary green (#04a12b) for primary actions; reserve them for WhatsApp integration and depth states only.
- Don't apply border-radius greater than 1.5rem (xl) to any component; the system maxes out at xl to maintain technical clarity.
- Don't nest shadows deeper than Level 2 (0 4px 12px); avoid stacking multiple shadows or using blur values above 12px.
- Don't use system fonts or fallback stacks; always load Inter from Google Fonts to ensure brand consistency across all platforms.
- Don't reduce padding below 12px (sm spacing) on interactive elements; this creates targets too small for reliable mobile interaction.
Edit, then copy or download.