ghost · desktop
Ruhezustand100 % Übereinstimmung34 Messwerte stimmen überein
Fokus100 % Übereinstimmung18 Messwerte stimmen überein
Konfidenz der Extraktion
Figmas Marketingseite setzt auf ein konsequent schwarz-weißes Monochrom-System, das von der eigenen Variable-Schrift figmaSans getragen wird. Das Design ist typografisch geprägt: große Display-Überschriften mit 88px und 56px und engem negativen Buchstabenabstand stehen im Kontrast zu leichtem Fließtext mit Schriftstärke 330. CTAs sind vollständig abgerundete Pillenformen (border-radius: 9999px) in massivem Schwarz mit weißer Schrift. Das Layout basiert auf einem Raster mit maximaler Inhaltsbreite von 1440px, großzügigem vertikalem Abschnittsabstand von 80px und einer klaren weißen Fläche. Tiefe wird minimal eingesetzt, Schatten sind dezente, auf oklch basierende Überlagerungen. Ein lavendelfarbener Lila-Akzent (#cb9fd2) erscheint im Footer-Banner. Die Gesamtästhetik wirkt souverän, typografisch anspruchsvoll und markenbetont.
ghost · desktop
Ruhezustand100 % Übereinstimmung34 Messwerte stimmen überein
Fokus100 % Übereinstimmung18 Messwerte stimmen überein
primary · desktop
Ruhezustand99 % Übereinstimmung44 Messwerte stimmen überein
Hover99 % Übereinstimmung18 Messwerte stimmen überein
Fokus98 % Übereinstimmung18 Messwerte stimmen überein
primary · desktop
Ruhezustand100 % Übereinstimmung43 Messwerte stimmen überein
Hover99 % Übereinstimmung18 Messwerte stimmen überein
Fokus100 % Übereinstimmung18 Messwerte stimmen überein
secondary · desktop
Wurzelelement height ist 69px, die Website hat 46px; Group height ist 45px, die Website hat 22px und 1 weitere.
Ruhezustand97 % Übereinstimmung3 von 44 Messwerten weichen ab
Hover96 % Übereinstimmung18 Messwerte stimmen überein
Fokus96 % Übereinstimmung18 Messwerte stimmen überein
desktop
Ruhezustand100 % Übereinstimmung235 Messwerte stimmen überein
desktop
Ruhezustand100 % Übereinstimmung65 Messwerte stimmen überein
desktop
Ruhezustand100 % Übereinstimmung475 Messwerte stimmen überein
Hovernicht geprüft
Fokusnicht geprüft
Fokus an cta 299 % Übereinstimmung18 Messwerte stimmen überein
Hover an cta 2100 % Übereinstimmung18 Messwerte stimmen überein
Fokus an cta 399 % Übereinstimmung18 Messwerte stimmen überein
Hover an cta 3100 % Übereinstimmung18 Messwerte stimmen überein
Fokus an cta100 % Übereinstimmung18 Messwerte stimmen überein
Fokus an link99 % Übereinstimmung18 Messwerte stimmen überein
Fokus an logo100 % Übereinstimmung18 Messwerte stimmen überein
Fokus an menu toggle100 % Übereinstimmung18 Messwerte stimmen überein
Fokus an nav link99 % Übereinstimmung18 Messwerte stimmen überein
mobile
Kein Rezept erstellt: Das Element war nicht sichtbar.
Für diese Komponente wurde nichts verglichen.
desktop
Columns height ist 806px, die Website hat 959px; Column height ist 806px, die Website hat 856px und 15 weitere.
Ruhezustand100 % Übereinstimmung17 von 1273 Messwerten weichen ab
Hovernicht geprüft
Fokusnicht geprüft
Fokus an link 2100 % Übereinstimmung18 Messwerte stimmen überein
Hover an link 2100 % Übereinstimmung18 Messwerte stimmen überein
Fokus an link100 % Übereinstimmung18 Messwerte stimmen überein
mobile
Columns height ist 1424px, die Website hat 3095px; Column height ist 112px, die Website hat 118px und 115 weitere.
Ruhezustand100 % Übereinstimmung117 von 1735 Messwerten weichen ab
Hovernicht geprüft
Fokusnicht geprüft
Fokus an link 2100 % Übereinstimmung18 Messwerte stimmen überein
Hover an link 2100 % Übereinstimmung18 Messwerte stimmen überein
Fokus an link100 % Übereinstimmung18 Messwerte stimmen überein
Figma
Figma's marketing site is a high-contrast monochrome canvas. Ink is pure black, surfaces are pure white, and the chrome carries no brand hue at all, so the saturated hero collage (coral grain gradients, deep indigo, lime dots, a lavender toolbar) supplies every bit of color on the page. The restraint is the point. The interface frames the product the way a canvas frames artwork.
Density is low and editorial. Sections breathe on a repeated 80px vertical rhythm. Copy is set in the custom variable Figma Sans at unusually light weights (320 and 330) for body and navigation. Headings stay at regular 400 and get their authority from size and tight negative tracking rather than from boldness. Figma Mono appears only as a small, widely tracked label voice, such as footer column headings and tiny badges.
Hierarchy comes from scale, black fills and inversion, not from color or shadow. The primary action is a solid black block. The secondary action is a transparent button drawn with a 1px inset ring at 16% black. The footer flips the whole scheme to white-on-black. Focus is a 2px dashed outline in the current ink color, set 4px off the element.
Key Characteristics:
primary/ink #000000 on surface #FFFFFF, inverting to surface-inverse #000000 with on-dark #FFFFFF in the footer.#00000029 0px 0px 0px 1px inset) rather than CSS borders or soft drop shadows.button-primary, 16px on button-primary-2). Generous 24px (rounded.xl) and pill (rounded.full) shapes live in the media and the chips.#000000D9. Outlined buttons deepen their ring to #00000066.The palette is two values used with discipline. Every functional role resolves to black or white, and translucency of those two creates the secondary tones.
primary, #000000): fill for primary CTAs (button-primary, button-primary-2, header-cta-3). Black is also the brand's interactive color. There is no blue link color.on-primary, #FFFFFF): label color on black buttons.focus-ring, #000000): the 2px dashed focus outline on light surfaces. On the dark footer the same outline is drawn in white.surface, #FFFFFF): page background and the fixed header background.surface-inverse, #000000): the footer background, a full inversion of the page.ink, #000000): all body, heading and navigation text on the light canvas.on-dark, #FFFFFF): footer text and the navigation-2 text.These are alpha variants of black and white read off component parts and states. They are not standalone tokens, so reproduce them as translucent ink rather than as new grays.
#000000D9 is the hover fill of button-primary, button-primary-2 and header-cta-3.#00000029 (16% black) is the inset ring of button-secondary and the bottom divider of header-group.#00000066 is the hover ring of button-secondary and header-cta-2.#FFFFFF3D is the fill of the 36px social icon buttons (footer-link).#FFFFFF29 is the footer top border and the fill of the footer-group-2 badges.#FFFFFF99 is the mono column headings (footer-column-heading-2).The UI system uses no gradients. The grainy coral and indigo gradients visible in the hero belong to product imagery and illustration, not to buttons, surfaces or text.
The captured dark-theme values keep the same two-ink logic with the roles swapped. #FFFFFF becomes the dominant text color and #000000 the dominant surface, and interactive fills follow that flip. Because the whole palette is black, white and their alpha tints, theming here is a straight inversion of the two inks rather than a separate dark palette.
The dark values below were measured with the dark color scheme forced on the page; the light values are the page's normal render.
| Role | Light | Dark |
|---|---|---|
| Text | primary | #FFFFFF |
figmaSans, fallback stack "SF Pro Display", system-ui, helvetica, sans-serif): the custom variable sans used for everything, including display, headings, body, navigation and buttons. Its variable weight axis is what allows the in-between 320 and 330 weights.figmaMono, fallback "SF Mono", menlo, monospace): reserved for eyebrow and section labels and tiny badges. It is always set at 400 with positive tracking.| Token | Size | Weight | Line Height | Letter Spacing | Use |
|---|---|---|---|---|---|
hero-display | 88px | 400 | 1 | -1.25px | Oversized hero statement |
display-lg | 56px | 400 | 1 | -1.25px | Page h1 |
display-md | 44px | 400 | 1.1 | -0.66px | Section h2 |
title-lg | 30px | 400 | 1.2 | -0.66px | Sub-section titles; label of the large button-primary-2 |
body-lg | 18px | 330 | 1.4 | -0.14px | Dominant text style: nav items, list links, header CTAs, footer headings |
body | 16px | 400 | 1.45 | -0.14px | Standard running copy, quotes, captions |
body-light | 16px | 320 | 1.45 | -0.12px | Light secondary copy and footer link text |
title-sm | 16px | 400 | 1.4 | normal | Small card/feature headings (h3) |
nav-link | 16px | 400 | 1.15 | normal | Compact nav/button labels |
button | 14px | 400 | 1.15 | normal | Small button labels |
caption | 14px | 400 | 1.45 | normal | Fine print, small paragraphs |
eyebrow-mono | 16px | 400 | 1.3 | 0.48px | Mono section eyebrows, footer column headings |
label-mono | 12px | 400 | 1 | 0.6px | Tiny mono badges (footer-text-3) |
body-lg at 330. Do not "fix" body copy to 400 across the board, because the lightness is intentional.nav-link, button, caption, title-sm) sit at normal.eyebrow-mono uses 0.48px and label-mono uses 0.6px. Mono never appears at body length.Figma Sans and Figma Mono are proprietary.
No base step was extracted. Spacing is expressed as measured component and section tokens:
| Token | Value | Measured on |
|---|---|---|
section-padding-y | 80px | Vertical padding repeated on the page's sections (16 section edges), measured on the page rather than on a component |
header-gap | 8px | Gap between items in header-nav-2 (right-hand header actions) |
button-primary-padding-y | 12px | Vertical padding of button-primary |
button-primary-padding-x | 22px | Horizontal padding of button-primary |
button-primary-2-padding-y | 24px | Vertical padding of the large button-primary-2 |
button-primary-2-padding-x | 32px | Horizontal padding of button-primary-2 |
button-ghost-padding-y | 8px | Vertical padding of button-ghost (header nav triggers) |
button-ghost-padding-x | 8px | Horizontal padding of button-ghost |
section-padding-y (80px) is the vertical rhythm between the page's sections. Every major band starts and ends on it.
No container max-width or grid-gap token was verified.
On desktop the screenshots show:
header-gap (8px).Whitespace does the separating work that borders and backgrounds do elsewhere. Sections are divided by the consistent section-padding-y (80px) and nothing else, with no alternating section fills on the light page. Control padding is generous for a marketing site: button-primary-2 uses button-primary-2-padding-y (24px) and button-primary-2-padding-x (32px), which turns a CTA into a block-like statement. Nav triggers stay tight at button-ghost-padding-x (8px) so the header reads as one quiet row.
Every spacing token restates a measurement of a verified component recipe, or the step those measurements share. section-padding-y is measured directly on the page sections and feeds no step.
section-padding-y: 80px (vertical padding repeated on the page sections: 16 section edges on 1 page)header-gap: 8px (header, gap of header-nav-2)button-primary-padding-y: 12px (button-primary, vertical padding of the root)button-primary-padding-x: 22px (button-primary, horizontal padding of the root)button-primary-2-padding-y: 24px (button-primary-2, vertical padding of the root)button-primary-2-padding-x: 32px (button-primary-2, horizontal padding of the root)button-ghost-padding-y: 8px (button-ghost, vertical padding of the root)button-ghost-padding-x: 8px (button-ghost, horizontal padding of the root)| Level | Treatment | Use |
|---|---|---|
| 0 — Flat surface | No shadow; solid surface #FFFFFF or surface-inverse #000000 | Page canvas, footer, primary black buttons (button-primary, button-primary-2) |
| 1 — Header divider | #00000029 0px 1px 0px 0px | Bottom edge of the fixed header (header-group) |
| 2 — Hairline ring | #00000029 0px 0px 0px 1px inset | Outline of button-secondary / header-cta-2 |
| 2h — Hairline ring, hover | #00000066 0px 0px 0px 1px inset | Hover state of button-secondary / header-cta-2 |
| Dark divider | 1px solid #FFFFFF29 top border | Top edge of footer and footer-mobile |
| Focus | 2px dashed outline, 4px offset, #000000 on light / #FFFFFF on dark | All interactive parts: buttons, nav links, logo, footer links |
| Blur | None measured | No backdrop-filter on header or any component |
Shadow philosophy. Figma uses box-shadow as a drawing tool, not a lighting tool. Every measured shadow has zero blur and zero spread beyond 1px. Each is either a 1px inset ring that outlines a control or a 1px offset line that underlines the header, always in 16% black (#00000029). Interaction raises the ring's opacity to 40% (#00000066) instead of adding lift.
Depth beyond that comes from the imagery. The hero's overlapping colored panels and floating toolbar layer like cards inside the illustration, while the UI chrome stays on one plane. When building new components:
| Token | Value | Use |
|---|---|---|
rounded.xs | 2px | Small detail elements (frequent on the page, exact targets not captured) |
rounded.sm | 4px | Tiny mono badges in the footer (footer-group-2) |
rounded.md | 8px | Standard buttons: button-primary, button-secondary, header CTAs |
rounded.lg | 16px | The oversized button-primary-2 CTA |
rounded.xl | 24px | Cards and media containers |
rounded.full | 9999px | Pills and circles: chips, slider thumbs, toolbar elements, the 36px round social buttons |
The geometry is soft-rectangular with a clear size-to-radius relationship:
button-primary-2 takes 16px, so the radius scales with the control.rounded.full is used heavily (it is the joint most frequent radius), but on chips, toggles and icon buttons rather than on the main CTAs. The measured CTAs are rounded rectangles, not pills.Each component below was distilled from the live page: the recipe is a standalone, placeholder-filled reproduction with literal values, and every frontmatter key named in the anatomy carries the same measurements. A verified component reproduced the original in every check; a flagged one is shipped with the reason it did not; one marked not verifiable could not be compared with the original, which says nothing about the recipe.
Button, primary
Verification: verified against the live page at desktop.
Anatomy
button-primary: the component root, a <a> (.c-button-primary)button-primary-group: inner group (.c-button-primary__group)button-primary-label: label text, 20 characters (.c-button-primary__label)Recipe
<div class="c-button-primary-scope">
<a class="c-button-primary" href="#">
<span class="c-button-primary__group">
<span class="c-button-primary__label">lorem ipsum dolor si</span>
</span>
</a>
</div>
.c-button-primary-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
}
.c-button-primary {
display: block;
justify-content: center;
border-spacing: 0px;
box-sizing: border-box;
padding: 12px 22px;
background-color: #000000;
color: #FFFFFF;
border-radius: 8px;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
letter-spacing: -0.14px;
text-decoration-line: none;
list-style-type: none;
transition-duration: 0.18s, 0.18s;
transition-timing-function: ease-out, ease-out;
transition-property: background, box-shadow;
}
.c-button-primary__group {
display: block;
box-sizing: border-box;
position: relative;
font-size: 0px;
line-height: 0px;
}
.c-button-primary__label {
display: inline-block;
box-sizing: border-box;
font-size: 16px;
font-weight: 400;
line-height: 22.4px;
text-align: center;
transition: translate 0.18s ease-out;
padding-right: 4px;
padding-left: 4px;
}
.c-button-primary:hover {
background-color: #000000D9;
}
.c-button-primary:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
States
button-primary-hover): background-color #000000D9Button, primary (2)
Verification: verified against the live page at desktop.
Anatomy
button-primary-2: the component root, a <a> (.c-button-primary-2)button-primary-2-group: inner group (.c-button-primary-2__group)button-primary-2-label: label text, 11 characters (.c-button-primary-2__label)Recipe
<div class="c-button-primary-2-scope">
<a class="c-button-primary-2" href="#">
<span class="c-button-primary-2__group">
<span class="c-button-primary-2__label">lorem ipsum</span>
</span>
</a>
</div>
.c-button-primary-2-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-button-primary-2 {
display: inline-flex;
justify-content: center;
border-spacing: 0px;
box-sizing: border-box;
padding: 24px 32px;
background-color: #000000;
color: #FFFFFF;
border-radius: 16px;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
text-decoration-line: none;
transition-duration: 0.18s, 0.18s;
transition-timing-function: ease-out, ease-out;
transition-property: background, box-shadow;
}
.c-button-primary-2__group {
display: block;
box-sizing: border-box;
position: relative;
font-size: 0px;
line-height: 0px;
}
.c-button-primary-2__label {
display: inline-block;
box-sizing: border-box;
font-size: 30px;
line-height: 36px;
letter-spacing: -0.66px;
text-align: center;
transition: translate 0.18s ease-out;
padding-right: 8px;
padding-left: 8px;
}
.c-button-primary-2:hover {
background-color: #000000D9;
}
.c-button-primary-2:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
States
button-primary-2-hover): background-color #000000D9Button, secondary
Verification: flagged, the button-secondary height did not reproduce the measured 46px after 2 correction attempts.
Anatomy
button-secondary: the component root, a <a> (.c-button-secondary)button-secondary-group: inner group (.c-button-secondary__group)button-secondary-label: label text, 13 characters (.c-button-secondary__label)Recipe
<div class="c-button-secondary-scope">
<a class="c-button-secondary" href="#">
<span class="c-button-secondary__group">
<span class="c-button-secondary__label">lorem ipsum d</span>
</span>
</a>
</div>
.c-button-secondary-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
}
.c-button-secondary {
display: block;
justify-content: center;
border-spacing: 0px;
box-sizing: border-box;
padding: 12px 22px;
background-color: transparent;
color: #000000;
border-radius: 8px;
box-shadow: #00000029 0px 0px 0px 1px inset;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
text-decoration-line: none;
list-style-type: none;
transition-duration: 0.18s, 0.18s;
transition-timing-function: ease-out, ease-out;
transition-property: background, box-shadow;
}
.c-button-secondary__group {
display: block;
box-sizing: border-box;
position: relative;
font-size: 0px;
line-height: 0px;
}
.c-button-secondary__label {
display: inline-block;
box-sizing: border-box;
font-size: 16px;
line-height: 22.4px;
text-align: center;
transition: translate 0.18s ease-out;
padding-right: 4px;
padding-left: 4px;
}
.c-button-secondary:hover {
box-shadow: #00000066 0px 0px 0px 1px inset;
}
.c-button-secondary:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
States
Button, ghost
Verification: verified against the live page at desktop.
Anatomy
button-ghost: the component root, a <button> (.c-button-ghost)button-ghost-label: label text, 8 characters (.c-button-ghost__label)button-ghost-icon: icon placeholder, 18px (.c-button-ghost__icon)Recipe
<div class="c-button-ghost-scope">
<button class="c-button-ghost" type="button">
<span class="c-button-ghost__label">lorem ip</span>
<span class="c-button-ghost__icon" aria-hidden="true"></span>
</button>
</div>
.c-button-ghost-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
}
.c-button-ghost {
display: inline-flex;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
padding: 8px;
background-color: transparent;
color: #000000;
border: 0;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
letter-spacing: -0.14px;
text-transform: none;
text-align: start;
list-style-type: none;
}
.c-button-ghost::after {
content: "";
display: block;
box-sizing: border-box;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
.c-button-ghost__label {
display: block;
box-sizing: border-box;
position: relative;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-button-ghost__label::after {
content: "";
display: block;
box-sizing: border-box;
width: 65px;
height: 1px;
position: absolute;
top: 22.1875px;
right: 0px;
bottom: 0px;
left: 0px;
background-color: #000000;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
.c-button-ghost__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 18px;
height: 18px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
transform: matrix(1, 0, 0, 1, 0, 0);
transition: transform 0.25s ease;
margin-left: 2px;
}
.c-button-ghost:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
States
Navigation
Verification: verified against the live page at desktop.
Anatomy
navigation: the component root, a <nav> (.c-navigation)navigation-list: inner flex row (.c-navigation__list)navigation-group: inner flex column (.c-navigation__group, 4 instances)navigation-button: button (.c-navigation__button, 4 instances), content not capturednavigation-link: link (.c-navigation__link)navigation-text: label text, 7 characters (.c-navigation__text)Recipe
<div class="c-navigation-scope">
<nav class="c-navigation">
<ul class="c-navigation__list">
<div class="c-navigation__group">
<button class="c-navigation__button" type="button"></button>
</div>
<div class="c-navigation__group">
<button class="c-navigation__button" type="button"></button>
</div>
<div class="c-navigation__group">
<button class="c-navigation__button" type="button"></button>
</div>
<div class="c-navigation__group">
<button class="c-navigation__button" type="button"></button>
</div>
<a class="c-navigation__link" href="#">
<span class="c-navigation__text">lorem i</span>
</a>
</ul>
</nav>
</div>
.c-navigation-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-navigation {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
color: #000000;
cursor: default;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
letter-spacing: -0.14px;
}
.c-navigation__list {
display: flex;
align-items: center;
box-sizing: border-box;
padding: 0px;
margin: 0px;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
list-style-type: none;
}
.c-navigation__group {
display: flex;
flex-direction: column;
align-items: center;
box-sizing: border-box;
}
.c-navigation__button {
display: flex;
align-items: center;
box-sizing: border-box;
padding: 8px;
background-color: transparent;
color: #000000;
border: 0;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
letter-spacing: -0.14px;
text-transform: none;
text-align: start;
}
.c-navigation__button::after {
content: "";
display: block;
box-sizing: border-box;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
.c-navigation__link {
display: block;
box-sizing: border-box;
padding: 8px;
color: #000000;
cursor: pointer;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
text-decoration-line: none;
}
.c-navigation__text {
display: inline-block;
box-sizing: border-box;
position: relative;
}
.c-navigation__text::after {
content: "";
display: block;
box-sizing: border-box;
width: 51px;
height: 1px;
position: absolute;
top: 22.1875px;
right: 0px;
bottom: 0px;
left: 0px;
background-color: #000000;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
States
Navigation (2)
Verification: verified against the live page at desktop.
Anatomy
navigation-2: the component root, a <nav> (.c-navigation-2)navigation-2-button: button (.c-navigation-2__button)navigation-2-icon: icon placeholder, 22px (.c-navigation-2__icon)navigation-2-text: label text, 7 characters (.c-navigation-2__text)navigation-2-icon-2: icon placeholder, 20px (.c-navigation-2__icon-2)Recipe
<div class="c-navigation-2-scope">
<nav class="c-navigation-2">
<button class="c-navigation-2__button" type="button">
<span class="c-navigation-2__icon" aria-hidden="true"></span>
<span class="c-navigation-2__text">lorem i</span>
<span class="c-navigation-2__icon-2" aria-hidden="true"></span>
</button>
</nav>
</div>
.c-navigation-2-scope {
background-color: #000000;
color: #FFFFFF;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-navigation-2 {
display: inline-block;
border-spacing: 0px;
box-sizing: border-box;
position: relative;
color: #FFFFFF;
cursor: default;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-navigation-2__button {
display: flex;
align-items: center;
gap: 4px;
box-sizing: border-box;
padding: 8px;
background-color: transparent;
color: #FFFFFF;
border: 0;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
letter-spacing: normal;
text-transform: none;
text-align: start;
}
.c-navigation-2__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 22px;
height: 22px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-navigation-2__icon-2 {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 20px;
height: 20px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
transition: transform 0.25s ease;
}
States
Verification: verified against the live page at desktop.
Anatomy
header: the component root, a <header> (.c-header)header-group: inner block (.c-header__group)header-group-2: inner flex row (.c-header__group-2)header-group-3: inner flex row (.c-header__group-3)header-logo: link (.c-header__logo)header-logo-icon: icon placeholder, 19x28px (.c-header__logo-icon)header-nav: inner flex row (.c-header__nav)header-group-4: inner flex column (.c-header__group-4, 4 instances)header-cta: the button-ghost button (.c-header__cta, 3 instances), content not capturedheader-menu-toggle: button (.c-header__menu-toggle), content not capturedheader-nav-link: link (.c-header__nav-link)header-text: label text, 7 characters (.c-header__text)header-nav-2: inner flex row (.c-header__nav-2)header-item: inner group (.c-header__item)header-link: link (.c-header__link)header-text-2: label text, 6 characters (.c-header__text-2)header-cta-2: the button-secondary button (.c-header__cta-2)header-group-5: inner group (.c-header__group-5, 2 instances)header-text-3: label text, 13 characters (.c-header__text-3)header-cta-3: the button-primary button (.c-header__cta-3)header-text-4: label text, 20 characters (.c-header__text-4)Recipe
<div class="c-header-scope">
<header class="c-header">
<div class="c-header__group">
<div class="c-header__group-2">
<div class="c-header__group-3">
<a class="c-header__logo" href="#">
<span class="c-header__logo-icon" aria-hidden="true"></span>
</a>
<ul class="c-header__nav">
<div class="c-header__group-4">
<button class="c-header__cta" type="button"></button>
</div>
<div class="c-header__group-4">
<button class="c-header__cta" type="button"></button>
</div>
<div class="c-header__group-4">
<button class="c-header__cta" type="button"></button>
</div>
<div class="c-header__group-4">
<button class="c-header__menu-toggle" type="button"></button>
</div>
<a class="c-header__nav-link" href="#">
<span class="c-header__text">lorem i</span>
</a>
</ul>
</div>
<ul class="c-header__nav-2">
<li class="c-header__item">
<a class="c-header__link" href="#">
<span class="c-header__text-2">lorem</span>
</a>
</li>
<a class="c-header__cta-2" href="#">
<span class="c-header__group-5">
<span class="c-header__text-3">lorem ipsum d</span>
</span>
</a>
<a class="c-header__cta-3" href="#">
<span class="c-header__group-5">
<span class="c-header__text-4">lorem ipsum dolor si</span>
</span>
</a>
</ul>
</div>
</div>
</header>
</div>
.c-header-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-header {
display: flex;
align-items: center;
border-spacing: 0px;
box-sizing: border-box;
position: fixed;
top: 0px;
right: 0px;
left: 0px;
z-index: 25;
background-color: #FFFFFF;
color: #000000;
cursor: default;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
letter-spacing: -0.14px;
transition: background 0.4s cubic-bezier(0.8, 0, 0.2, 1);
}
.c-header__group {
display: block;
box-sizing: border-box;
width: 100%;
background-color: #FFFFFF;
box-shadow: #00000029 0px 1px 0px 0px;
}
.c-header__group-2 {
display: flex;
justify-content: space-between;
box-sizing: border-box;
width: 1360px;
padding-top: 16px;
padding-bottom: 16px;
margin-right: auto;
margin-left: auto;
}
.c-header__group-3 {
display: flex;
align-items: center;
box-sizing: border-box;
min-height: 42px;
}
.c-header__logo {
display: block;
box-sizing: border-box;
color: #000000;
cursor: pointer;
text-decoration-line: underline;
text-decoration-color: #000000;
margin-right: 24px;
}
.c-header__logo-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 19px;
height: 28px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-header__nav {
display: flex;
align-items: center;
box-sizing: border-box;
padding: 0px;
margin: 0px;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
list-style-type: none;
}
.c-header__group-4 {
display: flex;
flex-direction: column;
align-items: center;
box-sizing: border-box;
}
.c-header__cta {
display: flex;
align-items: center;
box-sizing: border-box;
padding: 8px;
background-color: transparent;
color: #000000;
border: 0;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
letter-spacing: -0.14px;
text-transform: none;
text-align: start;
}
.c-header__cta::after {
content: "";
display: block;
box-sizing: border-box;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
.c-header__menu-toggle {
display: flex;
align-items: center;
box-sizing: border-box;
padding: 8px;
background-color: transparent;
color: #000000;
border: 0;
cursor: pointer;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
letter-spacing: -0.14px;
text-transform: none;
text-align: start;
}
.c-header__menu-toggle::after {
content: "";
display: block;
box-sizing: border-box;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
.c-header__nav-link {
display: block;
box-sizing: border-box;
padding: 8px;
color: #000000;
cursor: pointer;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
text-decoration-line: none;
}
.c-header__text {
display: inline-block;
box-sizing: border-box;
position: relative;
}
.c-header__text::after {
content: "";
display: block;
box-sizing: border-box;
width: 51px;
height: 1px;
position: absolute;
top: 22.1875px;
right: 0px;
bottom: 0px;
left: 0px;
background-color: #000000;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
.c-header__nav-2 {
display: flex;
align-items: center;
gap: 8px;
box-sizing: border-box;
min-height: 46px;
padding: 0px;
margin: 0px;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
list-style-type: none;
}
.c-header__item {
display: block;
box-sizing: border-box;
}
.c-header__link {
display: inline-flex;
justify-content: center;
box-sizing: border-box;
padding: 8px;
color: #000000;
cursor: pointer;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
text-decoration-line: none;
margin-right: 4px;
}
.c-header__text-2 {
display: block;
box-sizing: border-box;
position: relative;
}
.c-header__text-2::after {
content: "";
display: block;
box-sizing: border-box;
width: 43px;
height: 1px;
position: absolute;
top: 22.1875px;
right: 0px;
bottom: 0px;
left: 0px;
background-color: #000000;
opacity: 0;
transform: matrix(1, 0, 0, 0, 0, 3);
transition-duration: 0.25s, 0.25s;
transition-timing-function: ease, ease;
transition-property: transform, opacity;
}
.c-header__cta-2 {
display: block;
justify-content: center;
box-sizing: border-box;
padding: 12px 22px;
background-color: transparent;
color: #000000;
border-radius: 8px;
box-shadow: #00000029 0px 0px 0px 1px inset;
cursor: pointer;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
text-decoration-line: none;
transition-duration: 0.18s, 0.18s;
transition-timing-function: ease-out, ease-out;
transition-property: background, box-shadow;
}
.c-header__group-5 {
display: block;
box-sizing: border-box;
position: relative;
font-size: 0px;
line-height: 0px;
}
.c-header__text-3 {
display: inline-block;
box-sizing: border-box;
font-size: 16px;
line-height: 22.4px;
text-align: center;
transition: translate 0.18s ease-out;
padding-right: 4px;
padding-left: 4px;
}
.c-header__cta-3 {
display: block;
justify-content: center;
box-sizing: border-box;
padding: 12px 22px;
background-color: #000000;
color: #FFFFFF;
border-radius: 8px;
cursor: pointer;
text-decoration-line: none;
transition-duration: 0.18s, 0.18s;
transition-timing-function: ease-out, ease-out;
transition-property: background, box-shadow;
}
.c-header__text-4 {
display: inline-block;
box-sizing: border-box;
font-size: 16px;
font-weight: 400;
line-height: 22.4px;
text-align: center;
transition: translate 0.18s ease-out;
padding-right: 4px;
padding-left: 4px;
}
.c-header__logo:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
.c-header__cta:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
.c-header__menu-toggle:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
.c-header__nav-link:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
.c-header__link:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
.c-header__cta-2:hover {
box-shadow: #00000066 0px 0px 0px 1px inset;
}
.c-header__cta-2:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
.c-header__cta-3:hover {
background-color: #000000D9;
}
.c-header__cta-3:focus {
outline: 2px dashed #000000;
outline-offset: 4px;
}
States
header-logo focus: outline 2px dashed #000000, outline-offset 4pxheader-cta focus: outline 2px dashed #000000, outline-offset 4pxheader-menu-toggle focus: outline 2px dashed #000000, outline-offset 4pxheader-nav-link focus: outline 2px dashed #000000, outline-offset 4pxheader-link focus: outline 2px dashed #000000, outline-offset 4pxheader-cta-2 hover: box-shadow #00000066 0px 0px 0px 1px insetheader-cta-2 focus: outline 2px dashed #000000, outline-offset 4pxheader-cta-3 hover (header-cta-3-hover): background-color #000000D9header-cta-3 focus: outline 2px dashed #000000, outline-offset 4pxVerification: desktop flagged, the footer-columns height did not reproduce the measured 959px after 2 correction attempts; mobile flagged, the footer-mobile-columns height did not reproduce the measured 3095px after 2 correction attempts.
Anatomy
footer: the component root, a <footer> (.c-footer)footer-columns: inner grid (.c-footer__columns), content not capturedfooter-column: inner block (.c-footer__column, 3 instances)footer-icon: icon placeholder, 120x44px (.c-footer__icon)footer-group: inner block (.c-footer__group, 3 instances)footer-column-heading: heading, 13 characters (.c-footer__column-heading)footer-list: inner flex row (.c-footer__list)footer-link: link (.c-footer__link, 4 instances)footer-link-icon: icon placeholder, 24px (.c-footer__link-icon, 4 instances)footer-column-heading-2: heading, 7 characters (.c-footer__column-heading-2, 3 instances)footer-list-2: inner group (.c-footer__list-2, 3 instances), content not capturedfooter-item: inner group (.c-footer__item, 3 instances)footer-text: label text, 12 characters (.c-footer__text, 22 instances)footer-item-2: inner group (.c-footer__item-2, 24 instances)footer-link-2: link (.c-footer__link-2, 5 instances)footer-text-2: label text, 11 characters (.c-footer__text-2, 5 instances)footer-group-2: inner block (.c-footer__group-2, 4 instances)footer-text-3: label text, 3 characters (.c-footer__text-3, 4 instances)footer-group-3: inner block (.c-footer__group-3)Desktop recipe
<div class="c-footer-scope">
<footer class="c-footer">
<div class="c-footer__columns">
<div class="c-footer__column">
<span class="c-footer__icon" aria-hidden="true"></span>
<div class="c-footer__group">
<h2 class="c-footer__column-heading">lorem ipsum d</h2>
<ul class="c-footer__list">
<a class="c-footer__link" href="#">
<span class="c-footer__link-icon" aria-hidden="true"></span>
</a>
<a class="c-footer__link" href="#">
<span class="c-footer__link-icon" aria-hidden="true"></span>
</a>
<a class="c-footer__link" href="#">
<span class="c-footer__link-icon" aria-hidden="true"></span>
</a>
<a class="c-footer__link" href="#">
<span class="c-footer__link-icon" aria-hidden="true"></span>
</a>
</ul>
</div>
</div>
<div class="c-footer__column">
<div class="c-footer__group">
<h2 class="c-footer__column-heading-2">lorem i</h2>
<ul class="c-footer__list-2">
<li class="c-footer__item">
<span class="c-footer__text">lorem ipsum</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsu</span>
</li>
<li class="c-footer__item-2">
<a class="c-footer__link-2" href="#">
<span class="c-footer__text-2">lorem ipsum</span>
<div class="c-footer__group-2">
<span class="c-footer__text-3">lor</span>
</div>
</a>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ip</span>
</li>
<li class="c-footer__item-2">
<a class="c-footer__link-2" href="#">
<span class="c-footer__text-2">lorem ipsum</span>
<div class="c-footer__group-2">
<span class="c-footer__text-3">lor</span>
</div>
</a>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsu</span>
</li>
<li class="c-footer__item-2">
<a class="c-footer__link-2" href="#">
<span class="c-footer__text-2">lorem ipsum</span>
<div class="c-footer__group-2">
<span class="c-footer__text-3">lore</span>
</div>
</a>
</li>
<li class="c-footer__item-2">
<a class="c-footer__link-2" href="#">
<span class="c-footer__text-2">lorem ipsu</span>
<div class="c-footer__group-2">
<span class="c-footer__text-3">lore</span>
</div>
</a>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum dolor</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum dolor sit a</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum d</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ips</span>
</li>
</ul>
</div>
<div class="c-footer__group-3">
<h2 class="c-footer__column-heading-2">lorem</h2>
<ul class="c-footer__list-2">
<li class="c-footer__item">
<span class="c-footer__text">lorem i</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsu</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum</span>
</li>
</ul>
</div>
</div>
<div class="c-footer__column">
<div class="c-footer__group">
<h2 class="c-footer__column-heading-2">lorem ips</h2>
<ul class="c-footer__list-2">
<li class="c-footer__item">
<span class="c-footer__text">lorem ips</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ips</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum d</span>
</li>
<li class="c-footer__item-2">
<span class="c-footer__text">lorem ipsum dolor</span>
</li>
<li class="c-footer__item-2">
<a class="c-footer__link-2" href="#">
<span class="c-footer__text-2">lorem ipsum dolor</span>
</a>
</li>
</ul>
</div>
</div>
</div>
</footer>
</div>
.c-footer-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-footer {
display: block;
border-spacing: 0px;
box-sizing: border-box;
background-color: #000000;
color: #FFFFFF;
cursor: default;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
padding-top: 120px;
padding-bottom: 120px;
border-top-width: 1px;
border-top-style: solid;
border-top-color: #FFFFFF29;
}
.c-footer__columns {
display: grid;
column-gap: 60px;
grid-template-columns: 390px repeat(4, 180px);
box-sizing: border-box;
width: 1320px;
margin-right: auto;
margin-left: auto;
}
.c-footer__column {
display: block;
box-sizing: border-box;
}
.c-footer__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 120px;
height: 44px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
cursor: pointer;
}
.c-footer__group {
display: block;
box-sizing: border-box;
}
.c-footer__column-heading {
display: block;
box-sizing: border-box;
width: 1px;
height: 1px;
margin: 0px;
position: absolute;
overflow-x: hidden;
overflow-y: hidden;
cursor: text;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
white-space: nowrap;
}
.c-footer__list {
display: flex;
align-items: center;
gap: 8px;
box-sizing: border-box;
padding: 0px;
margin: 32px 0px 0px;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
list-style-type: none;
}
.c-footer__link {
display: flex;
align-items: center;
box-sizing: border-box;
width: 36px;
height: 36px;
background-color: #FFFFFF3D;
color: #FFFFFF;
border-radius: 50%;
cursor: pointer;
text-decoration-line: underline;
text-decoration-color: #FFFFFF;
padding-right: 6px;
padding-left: 6px;
}
.c-footer__link-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-footer__column-heading-2 {
display: block;
box-sizing: border-box;
margin: 0px 0px 16px;
color: #FFFFFF99;
cursor: text;
font-family: figmaMono, "figmaMono Fallback", "SF Mono", menlo, monospace;
font-size: 16px;
font-weight: 400;
line-height: 20.8px;
letter-spacing: 0.48px;
text-transform: uppercase;
}
.c-footer__list-2 {
display: block;
box-sizing: border-box;
padding: 0px;
margin: 0px;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
list-style-type: none;
}
.c-footer__item {
display: list-item;
box-sizing: border-box;
}
.c-footer__text {
display: inline;
box-sizing: border-box;
cursor: pointer;
font-size: 16px;
font-weight: 320;
line-height: 23.2px;
letter-spacing: -0.12px;
}
.c-footer__item-2 {
display: list-item;
box-sizing: border-box;
margin-top: 12px;
}
.c-footer__link-2 {
display: inline;
box-sizing: border-box;
color: #FFFFFF;
cursor: pointer;
text-decoration-line: none;
}
.c-footer__text-2 {
display: inline;
box-sizing: border-box;
font-size: 16px;
font-weight: 320;
line-height: 23.2px;
letter-spacing: -0.12px;
}
.c-footer__group-2 {
display: inline-block;
box-sizing: border-box;
padding: 4.5px 8px;
position: relative;
top: -2px;
background-color: #FFFFFF29;
border-radius: 4px;
font-size: 0px;
line-height: 0px;
margin-left: 8px;
}
.c-footer__text-3 {
display: inline;
box-sizing: border-box;
font-family: figmaMono, "figmaMono Fallback", "SF Mono", menlo, monospace;
font-size: 12px;
font-weight: 400;
line-height: 12px;
letter-spacing: 0.6px;
text-transform: uppercase;
}
.c-footer__group-3 {
display: block;
box-sizing: border-box;
margin-top: 48px;
}
.c-footer__link:focus {
outline: 2px dashed #FFFFFF;
outline-offset: 4px;
}
.c-footer__link-2:hover {
text-decoration-line: underline;
}
.c-footer__link-2:focus {
outline: 2px dashed #FFFFFF;
outline-offset: 4px;
}
Mobile anatomy
footer-mobile: the component root, a <footer> (.c-footer-mobile)footer-mobile-columns: inner grid (.c-footer-mobile__columns), content not capturedfooter-mobile-column: inner block (.c-footer-mobile__column)footer-mobile-icon: icon placeholder, 120x44px (.c-footer-mobile__icon)footer-mobile-group: inner block (.c-footer-mobile__group, 3 instances)footer-mobile-column-heading: heading, 13 characters (.c-footer-mobile__column-heading)footer-mobile-list: inner flex row (.c-footer-mobile__list)footer-mobile-link: link (.c-footer-mobile__link, 4 instances)footer-mobile-link-icon: icon placeholder, 24px (.c-footer-mobile__link-icon, 4 instances)footer-mobile-item: inner group (.c-footer-mobile__item, 4 instances)footer-mobile-column-2: inner block (.c-footer-mobile__column-2)footer-mobile-heading: heading, 7 characters (.c-footer-mobile__heading, 3 instances)footer-mobile-list-2: inner group (.c-footer-mobile__list-2, 3 instances), content not capturedfooter-mobile-link-2: link (.c-footer-mobile__link-2, 27 instances)footer-mobile-text: label text, 12 characters (.c-footer-mobile__text, 27 instances)footer-mobile-item-2: inner group (.c-footer-mobile__item-2, 24 instances)footer-mobile-group-2: inner block (.c-footer-mobile__group-2, 4 instances)footer-mobile-text-2: label text, 3 characters (.c-footer-mobile__text-2, 4 instances)footer-mobile-group-3: inner block (.c-footer-mobile__group-3)footer-mobile-column-3: inner block (.c-footer-mobile__column-3)Mobile recipe
<div class="c-footer-mobile-scope">
<footer class="c-footer-mobile">
<div class="c-footer-mobile__columns">
<div class="c-footer-mobile__column">
<span class="c-footer-mobile__icon" aria-hidden="true"></span>
<div class="c-footer-mobile__group">
<h2 class="c-footer-mobile__column-heading">lorem ipsum d</h2>
<ul class="c-footer-mobile__list">
<a class="c-footer-mobile__link" href="#">
<span class="c-footer-mobile__link-icon" aria-hidden="true"></span>
</a>
<a class="c-footer-mobile__link" href="#">
<span class="c-footer-mobile__link-icon" aria-hidden="true"></span>
</a>
<a class="c-footer-mobile__link" href="#">
<span class="c-footer-mobile__link-icon" aria-hidden="true"></span>
</a>
<li class="c-footer-mobile__item">
<a class="c-footer-mobile__link" href="#">
<span class="c-footer-mobile__link-icon" aria-hidden="true"></span>
</a>
</li>
</ul>
</div>
</div>
<div class="c-footer-mobile__column-2">
<div class="c-footer-mobile__group">
<h2 class="c-footer-mobile__heading">lorem i</h2>
<ul class="c-footer-mobile__list-2">
<li class="c-footer-mobile__item">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsu</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
<div class="c-footer-mobile__group-2">
<span class="c-footer-mobile__text-2">lor</span>
</div>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ip</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
<div class="c-footer-mobile__group-2">
<span class="c-footer-mobile__text-2">lor</span>
</div>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsu</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
<div class="c-footer-mobile__group-2">
<span class="c-footer-mobile__text-2">lore</span>
</div>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsu</span>
<div class="c-footer-mobile__group-2">
<span class="c-footer-mobile__text-2">lore</span>
</div>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum dolor</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum dolor sit a</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum d</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ips</span>
</a>
</li>
</ul>
</div>
<div class="c-footer-mobile__group-3">
<h2 class="c-footer-mobile__heading">lorem</h2>
<ul class="c-footer-mobile__list-2">
<li class="c-footer-mobile__item">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem i</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsu</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
</ul>
</div>
</div>
<div class="c-footer-mobile__column-3">
<div class="c-footer-mobile__group">
<h2 class="c-footer-mobile__heading">lorem ips</h2>
<ul class="c-footer-mobile__list-2">
<li class="c-footer-mobile__item">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ips</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ips</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum d</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum dolor</span>
</a>
</li>
<li class="c-footer-mobile__item-2">
<a class="c-footer-mobile__link-2" href="#">
<span class="c-footer-mobile__text">lorem ipsum dolor</span>
</a>
</li>
</ul>
</div>
</div>
</div>
</footer>
</div>
.c-footer-mobile-scope {
background-color: #FFFFFF;
color: #000000;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
}
.c-footer-mobile {
display: block;
border-spacing: 0px;
box-sizing: border-box;
background-color: #000000;
color: #FFFFFF;
cursor: default;
font-family: figmaSans, "figmaSans Fallback", "SF Pro Display", system-ui, helvetica, sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 23.2px;
padding-top: 80px;
padding-bottom: 48px;
border-top-width: 1px;
border-top-style: solid;
border-top-color: #FFFFFF29;
}
.c-footer-mobile__columns {
display: grid;
grid-template-columns: 1fr;
box-sizing: border-box;
width: 342px;
margin-right: auto;
margin-left: auto;
}
.c-footer-mobile__column {
display: block;
box-sizing: border-box;
margin-bottom: 48px;
}
.c-footer-mobile__icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 120px;
height: 44px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
cursor: pointer;
}
.c-footer-mobile__group {
display: block;
box-sizing: border-box;
}
.c-footer-mobile__column-heading {
display: block;
box-sizing: border-box;
width: 1px;
height: 1px;
margin: 0px;
position: absolute;
overflow-x: hidden;
overflow-y: hidden;
cursor: text;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
white-space: nowrap;
}
.c-footer-mobile__list {
display: flex;
align-items: center;
gap: 12px;
box-sizing: border-box;
padding: 0px;
margin: 32px 0px 0px;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
list-style-type: none;
}
.c-footer-mobile__link {
display: flex;
align-items: center;
box-sizing: border-box;
width: 36px;
height: 36px;
background-color: #FFFFFF3D;
color: #FFFFFF;
border-radius: 50%;
cursor: pointer;
text-decoration-line: underline;
text-decoration-color: #FFFFFF;
padding-right: 6px;
padding-left: 6px;
}
.c-footer-mobile__link-icon {
display: block;
flex-shrink: 0;
box-sizing: border-box;
width: 24px;
height: 24px;
max-width: 100%;
overflow-x: hidden;
overflow-y: hidden;
background-color: currentcolor;
}
.c-footer-mobile__item {
display: list-item;
box-sizing: border-box;
}
.c-footer-mobile__column-2 {
display: block;
box-sizing: border-box;
}
.c-footer-mobile__heading {
display: block;
box-sizing: border-box;
margin: 0px 0px 16px;
color: #FFFFFF99;
cursor: text;
font-family: figmaMono, "figmaMono Fallback", "SF Mono", menlo, monospace;
font-size: 16px;
font-weight: 400;
line-height: 20.8px;
letter-spacing: 0.64px;
text-transform: uppercase;
}
.c-footer-mobile__list-2 {
display: block;
box-sizing: border-box;
padding: 0px;
margin: 0px;
font-size: 18px;
font-weight: 330;
line-height: 25.2px;
list-style-type: none;
}
.c-footer-mobile__link-2 {
display: inline;
box-sizing: border-box;
color: #FFFFFF;
cursor: pointer;
text-decoration-line: none;
}
.c-footer-mobile__text {
display: inline;
box-sizing: border-box;
font-size: 22px;
font-weight: 320;
line-height: 29.7px;
letter-spacing: -0.11px;
}
.c-footer-mobile__item-2 {
display: list-item;
box-sizing: border-box;
margin-top: 12px;
}
.c-footer-mobile__group-2 {
display: inline-block;
box-sizing: border-box;
padding: 4.5px 8px;
position: relative;
top: -2px;
background-color: #FFFFFF29;
border-radius: 4px;
font-size: 0px;
line-height: 0px;
margin-left: 8px;
}
.c-footer-mobile__text-2 {
display: inline;
box-sizing: border-box;
font-family: figmaMono, "figmaMono Fallback", "SF Mono", menlo, monospace;
font-size: 12px;
font-weight: 400;
line-height: 12px;
letter-spacing: 0.6px;
text-transform: uppercase;
}
.c-footer-mobile__group-3 {
display: block;
box-sizing: border-box;
margin-top: 32px;
}
.c-footer-mobile__column-3 {
display: block;
box-sizing: border-box;
margin-top: 32px;
}
.c-footer-mobile__link:focus {
outline: 2px dashed #FFFFFF;
outline-offset: 4px;
}
.c-footer-mobile__link-2:hover {
text-decoration-line: underline;
}
.c-footer-mobile__link-2:focus {
outline: 2px dashed #FFFFFF;
outline-offset: 4px;
}
States
footer-link focus: outline 2px dashed #FFFFFF, outline-offset 4pxfooter-link-2 hover: text-decoration-line underlinefooter-link-2 focus: outline 2px dashed #FFFFFF, outline-offset 4pxfooter-mobile-link focus: outline 2px dashed #FFFFFF, outline-offset 4pxfooter-mobile-link-2 hover: text-decoration-line underlinefooter-mobile-link-2 focus: outline 2px dashed #FFFFFF, outline-offset 4pxeyebrow-mono and label-mono labels.body-light), 330 (body-lg) and 400 (headings, body, labels).primary #000000 and on-primary labels. That fill is shared by button-primary and the large button-primary-2, so black signals "action" generally, not just one hierarchy level.button-primary and button-secondary use rounded.md (8px) and button-primary-2 uses rounded.lg (16px).button-primary 46px, button-primary-2 84px, button-ghost 39px.#00000029 0px 0px 0px 1px inset at rest, deepening to #00000066 0px 0px 0px 1px inset on hover. This is a hairline system, not a flat one.#000000D9. Focus every interactive element with a 2px dashed outline at 4px offset, in focus-ring #000000 on light and white on the footer.section-padding-y (80px).display-md → display-lg → hero-display.ink or on-dark.hero-display) and mono stays positive (0.6px at label-mono).#FFFFFF99 for footer mono headings (footer-column-heading-2).rounded.md buttons for full pills. rounded.full belongs to chips and round icon buttons such as the 36px footer-link.button-secondary (flagged: its height did not reproduce the measured 46px after 2 correction attempts) or footer (flagged: the footer-columns height did not reproduce the measured 959px) blindly. Verify their box dimensions against the site.This analysis is two-viewport (one desktop, one mobile capture). No breakpoint values were observed, so treat the behavior below as endpoints rather than a breakpoint map.
header-menu-toggle, 39px tall) and a single CTA. The desktop dropdown triggers and the secondary "Contact sales" button drop out.footer-mobile measures 3224px tall against 1200px for the desktop footer.footer-text) to 22px at weight 320 with 29.7px line height (footer-mobile-text). This turns each link into a comfortable tap row.| Component | Measured size |
|---|---|
button-primary | 46px tall |
button-ghost / header-menu-toggle | 39px tall |
Footer social icon buttons (footer-mobile-link) | 36px circles |
Mobile appears to keep a consistent left margin in the screenshots, but no mobile gutter value was measured.
primary, ink, surface, surface-inverse, on-dark and focus-ring.#000000D9 for hover, #00000029 and #00000066 for hairlines, and the #FFFFFF29, #FFFFFF3D and #FFFFFF99 footer tints.hero-display … label-mono); do not invent sizes.button-primary (46px, 8px radius) or button-primary-2 (84px, 16px radius).button-secondary, which uses the inset hairline ring.button-ghost (39px, 8px padding).#00000029 0px 0px 0px 1px inset, #00000066 0px 0px 0px 1px inset, #00000029 0px 1px 0px 0px) or the footer's 1px #FFFFFF29 border.section-padding-y (80px) top and bottom.button-secondary (flagged: height did not reproduce the measured 46px after 2 correction attempts).footer (flagged: footer-columns height did not reproduce the measured 959px).footer-mobile (flagged: footer-mobile-columns height did not reproduce the measured 3095px).footer-link-2 lists a hover state with no changes recorded) and active/pressed/disabled states are unknown. No form inputs were present.base step was verified. Breakpoint values are unknown.rounded.xs (2px) and rounded.xl (24px) were not tied to a measured component.Diese DESIGN.md-Datei ist auf Englisch, der Sprache, in der KI-Coding-Agenten sie lesen.
Extrahiert aus der öffentlichen Website von Figma, keine offiziellen Markenrichtlinien. Schriften einer anderen Website prüfen

Die Marketing-Startseite von Notion kombiniert einen tiefen Marineton (#02093a) im Hero-Bereich mit einem hellen Hintergrund (#f6f5f4) im Hauptteil. Für alle Textrollen kommt eine eigene Schrift (NotionInter) zum Einsatz. Das Design basiert auf einem 12-Spalten-Raster mit 28px Rinnenabstand und einer doppelten Eckenlogik: 8px für Karten, 9999px für Pills. Schwebende UI-Elemente erhalten ein mehrschichtiges, progressives Schattensystem. Die Markenfarbe Blau (#2537b1) prägt CTAs und Akzenthervorhebungen, während eine semantische Graustufenleiter (gray-200 bis gray-900) Text- und Flächenhierarchie strukturiert.

Das Designsystem von Linear ist dark-first, eine Produkt-UI mit hoher Informationsdichte für Engineering-Teams. Die Flächenpalette basiert auf nahezu Schwarz (#08090a, #0f1011), ergänzt durch geschichtete dunkle Grautöne, die Seitenleiste, Karten und Panels voneinander abheben. Die Typografie besteht ausschließlich aus Inter Variable mit präzisem, negativem Buchstabenabstand bei Display-Größen, für Inline-Code wird Berkeley Mono verwendet. Die Eckenradien sind bewusst klein gehalten (überwiegend 2–6px), Pillenformen sind Badges und Status-Chips vorbehalten. Elevation entsteht über dezente 1px-Innenrahmen und Schatten mit niedriger Deckkraft statt über dramatische Schichtung. Die primäre CTA-Farbe ist das charakteristische Indigo von Linear (#5e6ad2), eingesetzt beim Sign-Up-Button und bei zentralen Links.

Die Styling-Zusammenfassung der Marketing-Startseite von Shopify setzt auf einen eindrucksvollen Video-Hero über die volle Breite mit einem nahezu schwarzen Hintergrund (#02090a), der sich scharf von der weißen Navigationsleiste darüber absetzt. Die primäre Markenakzentfarbe ist ein kräftiges Mintgrün (#36f4a4), das sparsam für Hervorhebungen und interaktive Zustände eingesetzt wird. Die Typografie teilt sich auf: NeueHaasGrotesk für Display- und redaktionelle Überschriften, Inter-Variable für UI-Fließtext. CTAs verwenden vollständig abgerundete Pill-Formen (border-radius: 9999px). Das Gesamtsystem wirkt selbstbewusst, kontraststark und aspirativ und ist darauf ausgelegt, Besucher in Händler zu verwandeln.

WIRED's Designsystem ist ein kontraststarkes, redaktionell geprägtes Monochrom-Framework, das auf einer proprietären Schriftfamilie (Breve Text, WIRED Mono, WiredDisplay, Apercu) und einer nahezu farblosen Palette aufbaut. Schwarz (#000000) dominiert mit 2961 Treffern und prägt Text, Rahmen, Icons und interaktive Zustände. Weiß (#ffffff) bildet die primäre Fläche. Akzentfarbe wird sparsam eingesetzt: Nur #057dbc erscheint als Markenblau für Abo-CTAs. Das Layout nutzt ein strukturiertes mehrspaltiges Story-Raster mit engem 8px-Grundabstand, flachen Flächen ohne Schatten und minimalen Eckradien (4px als Standard). Typografie ist das wichtigste Unterscheidungsmerkmal: Redaktioneller Fließtext verwendet Breve Text in 19px, Abschnittslabels setzen WIRED Mono in Großbuchstaben mit gesperrtem Laufweite, und Display-Überschriften nutzen WiredDisplay. Die Gesamtästhetik wirkt autoritativ, informationsdicht und auf den Lesefluss ausgerichtet.

Das Designsystem von Airbnb basiert auf einer einzigen proprietären Variablenschrift (Airbnb Cereal VF) und einer nahezu monochromen neutralen Palette, die von tiefem Anthrazit (#222222) und hellen Grautönen getragen wird. Das markentypische Korallenrosa „Rausch“ (#ff385c) ist ausschließlich für primäre Call-to-Actions und das Logo vorbehalten. Das Layout besteht aus einem responsiven Raster mit Fotokarten, großzügigen Bild-Text-Verhältnissen und weichen, 20 px großen abgerundeten Ecken bei den Karten. Ein mehrschichtiges, ambientes Schattensystem erzeugt subtile Tiefe ohne harte Kontraste. Die Suchleiste ist ein auffälliger, pillenförmiger Container, der die zentrale Nutzeraktion bündelt.
IKEAs globale Startseite setzt auf ein kräftiges, flaches Design-System, das sich um das ikonische IKEA-Gelb (#ffdb00) als primäre Aktionsfläche und das IKEA-Blau (#0058a3) als Akzent des Markenlogos gruppiert. Das gesamte typografische System basiert auf einer einzigen Schrift, Noto IKEA, in den Gewichten 400 und 700 und einer streng definierten Skala von 14px Fließtext bis zu 51px Display-Überschriften. Erhöhung wird ausschließlich über Farbkontraste und Layoutstruktur vermittelt, nicht über Schatten. Das Layout verwendet einen Container mit maximaler Breite von 90rem und einen Grid-Abstand von 1,5rem auf dem Desktop sowie einen einheitlichen 8px-Border-Radius-Token für interaktive Elemente. Der cremeweiße Hintergrund (#fffefb) verleiht dem stark kontrastierenden Text (#111111) Wärme und sorgt für ein kontrastreiches, gut lesbares Leseerlebnis.