landing-page

Design System

A comprehensive showcase of all components and patterns used across the site.

Typography

Our typography system uses 5 font sizes for consistency.

Headings

Heading 1

Heading 2

Heading 3

Heading 4

Heading 5
Heading 6

Text Variants

Lead text for introductions and emphasis.

Body text is the default for readable content at 16px base size.

Small text for supporting information.

Caption text for labels and metadata.

Inline Elements

This is a standard link and this is an external link. We can also use inline code for technical content.

Lists

Unordered List

  • First item in the list
  • Second item with more text
  • Third item to complete

Ordered List

  1. Step one in the process
  2. Step two continues here
  3. Step three completes it

Code Block

function Button({ variant = 'primary', size = 'md', ...props }) {
  const variants = {
    primary: 'btn-primary',
    secondary: 'btn-secondary',
    ghost: 'btn-ghost',
  }
  
  return <button className={cn('btn', variants[variant])} {...props} />
}

Blockquote

"Good design is as little design as possible. Less, but better – because it concentrates on the essential aspects, and the products are not burdened with non-essentials."

— Dieter Rams


Colors

Our color palette built around the signature LOM Pink.

Accent / LOM Pink

oklch(0.6143 0.2402 2.07)

Background

#1c1c1c

Foreground

#ededed

Muted

#222222

Spacing System

Six spacing values (8px base) create consistent visual rhythm.

xs

8px · p-2

sm

16px · p-4

md

24px · p-6

lg

32px · p-8

xl

48px · p-12

2xl

64px · p-16

Buttons

Button components in different variants and sizes.

Variants

Sizes

States

With Icons

Form Components

Accessible form elements with consistent styling.

Text Inputs

We'll never share your email.

Password must be at least 8 characters

Selection Inputs

Layout Components

Building blocks for consistent page layouts.

Grid Layout

Grid Item 1

Grid Item 2

Grid Item 3

Stack Layout

Stack with spacing-4 (16px)

First item in stack

Second item in stack

Third item in stack

Card Examples

Basic Card

Using the .card class

Interactive

With hover effects

Custom

Custom styling

Container Layout

The Container component provides consistent max-width (1280px) and responsive padding. It's used for main page content to ensure proper spacing on all screen sizes.

Cards

Card components for content grouping.

Basic Card

With header and description

This is the main content area of the card. It can contain any content you need.

Interactive Card

Has hover effects

This card responds to hover with a subtle lift and border color change.

Compact Card

This card uses small padding for a more compact appearance.

Complete Example

A contact form showing how components work together.

Get in Touch

Fill out this form and we'll get back to you within 24 hours.