# Centered headline with floating badge cards — Section Design Reference

Schema: Design Details SECTION.md v3.2
Source: https://apps.marcoluthi.com/badgey
Website: Badgey
Section ID: 65bc1e5b-feaa-4fd4-9f17-4dfc92f49829
Design Details page: https://designdetails.io/sections/apps-marcoluthi-com--home--hero-65bc1e5b
Status: deterministic evidence captured; editorial AI review pending

## Purpose

This is a hero section on the Home page. Use the attached crop and measured browser facts to reconstruct its composition. Do not infer unmeasured source values.

## Layout

1440×608px root; block

## Visual signature

minimal, corporate, soft, apple-esque treatment at 1440×544px. The crop spans 64–608px of a 7275px page.

## Components

- Navigation Bar
- Hero
- Floating Product Card
- Feature Collection
- FAQ Accordion
- Newsletter Form
- Footer

## Evidence note

The geometry, typography, colors, media, and animation parameters below come from saved HTML/CSS/browser evidence when present. Website-level roles are supplied separately. Editorial section judgment remains pending unless the MCP resolves this source ID to a promoted canonical record.

## Build blueprint v3.2

### Purpose and classification

- Canonical type: hero
- Source type: hero
- Structure: 1440×608px root; block
- Layout: 1440×608px root; block
- Styles: minimal, corporate, soft, apple-esque
- Components: Navigation Bar, Hero, Floating Product Card, Feature Collection, FAQ Accordion, Newsletter Form, Footer
- Purpose: hero section from the Home page of Badgey.
- Visual signature: rgba(0, 0, 0, 0) with 1440×608px root; block. Inspect the crop for image and content hierarchy.
- Place on the page: 2 of 8, after Navigation (`8e0b0a04-3027-4197-a376-a3fb627a0770`), before Feature collection (`a367a1ab-86bd-4286-9ba2-96d117d7dd6e`)

### Crop and composition

- Crop: 1440×544px; aspect ratio 2.647:1
- Page bounds: 64–608px of 7275px
- Guidance: Preserve the documented hierarchy and relationships; exact measurements were not deterministically captured.

### Exact typography evidence

The sectionScale values were measured inside this crop. The siteRoles values explain how those faces function across the source website; they must not replace section measurements.

```json
{
  "sectionScale": [
    {
      "role": "section heading",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "104px",
      "weight": "300",
      "lineHeight": "98.8px",
      "letterSpacing": "-3.1px",
      "sample": "Wear your name.",
      "element": "h1",
      "occurrences": 1,
      "sourceId": "font-3"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "16px",
      "weight": "500",
      "lineHeight": "24px",
      "letterSpacing": "normal",
      "sample": "Name badge app for iPhone",
      "element": "p",
      "occurrences": 2,
      "sourceId": "font-11"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "12.8px",
      "weight": "300",
      "lineHeight": "14.7px",
      "letterSpacing": "-0.3px",
      "sample": "Maya Brooks",
      "element": "p",
      "occurrences": 2,
      "sourceId": "font-13"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "5.1px",
      "weight": "300",
      "lineHeight": "7.7px",
      "letterSpacing": "normal",
      "sample": "Travel Writer",
      "element": "p",
      "occurrences": 2,
      "sourceId": "font-14"
    },
    {
      "role": "card/subheading",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "21.6px",
      "weight": "300",
      "lineHeight": "24.8px",
      "letterSpacing": "-0.5px",
      "sample": "Priya Nair",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-16"
    },
    {
      "role": "card/subheading",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "20px",
      "weight": "300",
      "lineHeight": "23px",
      "letterSpacing": "-0.5px",
      "sample": "Alex Chen",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-17"
    },
    {
      "role": "card/subheading",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "20px",
      "weight": "400",
      "lineHeight": "32.5px",
      "letterSpacing": "normal",
      "sample": "Badgey turns your iPhone into a name badge that faces the people you meet, on a lanyard or in your p",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-18"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "16px",
      "weight": "300",
      "lineHeight": "18.4px",
      "letterSpacing": "-0.4px",
      "sample": "Jonas Keller",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-20"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "10.4px",
      "weight": "300",
      "lineHeight": "12px",
      "letterSpacing": "-0.3px",
      "sample": "Leo Martin",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-26"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "8.6px",
      "weight": "300",
      "lineHeight": "13px",
      "letterSpacing": "normal",
      "sample": "Speaker",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-27"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "8px",
      "weight": "300",
      "lineHeight": "12px",
      "letterSpacing": "normal",
      "sample": "iOS Engineer · Speaker",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-28"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "6.7px",
      "weight": "400",
      "lineHeight": "10.1px",
      "letterSpacing": "normal",
      "sample": "badgey.marcoluthi.com",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-29"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "6.4px",
      "weight": "300",
      "lineHeight": "9.6px",
      "letterSpacing": "normal",
      "sample": "Organiser",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-30"
    },
    {
      "role": "body/supporting copy",
      "family": "not captured",
      "stack": "-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif",
      "size": "4.2px",
      "weight": "300",
      "lineHeight": "6.2px",
      "letterSpacing": "normal",
      "sample": "Volunteer",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-31"
    }
  ],
  "siteRoles": [
    {
      "role": "display",
      "size": "104px",
      "family": null,
      "source": "computed",
      "traits": "Regular",
      "weight": "300",
      "evidence": "font-3: computed CSS at 1440×1000; AI role: 104px weight 300 used for the main hero heading.",
      "sampleId": "font-3",
      "confidence": 0.95,
      "lineHeight": "98.8px",
      "letterSpacing": "-3.1px"
    },
    {
      "role": "heading",
      "size": "72px",
      "family": null,
      "source": "computed",
      "traits": "Regular",
      "weight": "300",
      "evidence": "font-1: computed CSS at 1440×1000; AI role: 72px weight 300 used for primary section headings.",
      "sampleId": "font-1",
      "confidence": 0.95,
      "lineHeight": "72px",
      "letterSpacing": "-1.8px"
    },
    {
      "role": "body",
      "size": "18px",
      "family": null,
      "source": "computed",
      "traits": "Regular",
      "weight": "400",
      "evidence": "font-6: computed CSS at 1440×1000; AI role: 18px weight 400 used for descriptive body paragraphs.",
      "sampleId": "font-6",
      "confidence": 0.9,
      "lineHeight": "29.3px",
      "letterSpacing": "normal"
    }
  ]
}
```

### Exact color evidence

The section samples record where each computed value was used. Functional roles come from the website-level classifier and remain separate.

```json
{
  "sectionUsage": [
    {
      "value": "#000000",
      "cssValue": "rgb(0, 0, 0)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "svg-fill"
      ],
      "occurrences": 20,
      "sourceId": "color-3"
    },
    {
      "value": "#FFFFFF",
      "cssValue": "rgb(255, 255, 255)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "background"
      ],
      "occurrences": 62,
      "sourceId": "color-4"
    },
    {
      "value": "#111113",
      "cssValue": "rgb(17, 17, 19)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "control-background"
      ],
      "occurrences": 17,
      "sourceId": "color-5"
    },
    {
      "value": "#6C6C72",
      "cssValue": "rgb(108, 108, 114)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "svg-stroke"
      ],
      "occurrences": 29,
      "sourceId": "color-7"
    },
    {
      "value": "#000000",
      "cssValue": "oklab(0 0 0 / 0.35)",
      "alpha": 0.34901960784313724,
      "appliedAs": [
        "background"
      ],
      "occurrences": 9,
      "sourceId": "color-8"
    },
    {
      "value": "#FFFFFF",
      "cssValue": "oklab(0.999994 0.0000455678 0.0000200868 / 0.55)",
      "alpha": 0.5490196078431373,
      "appliedAs": [
        "background"
      ],
      "occurrences": 4,
      "sourceId": "color-10"
    },
    {
      "value": "#FFFFFF",
      "cssValue": "oklab(0.999994 0.0000455677 0.0000200868 / 0.6)",
      "alpha": 0.6,
      "appliedAs": [
        "text",
        "background"
      ],
      "occurrences": 11,
      "sourceId": "color-12"
    },
    {
      "value": "#000000",
      "cssValue": "oklab(0 0 0 / 0.5)",
      "alpha": 0.5019607843137255,
      "appliedAs": [
        "text"
      ],
      "occurrences": 6,
      "sourceId": "color-15"
    },
    {
      "value": "#F2F2F2",
      "cssValue": "rgb(242, 242, 242)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 2,
      "sourceId": "color-22"
    },
    {
      "value": "#000000",
      "cssValue": "oklab(0 0 0 / 0.7)",
      "alpha": 0.7019607843137254,
      "appliedAs": [
        "text"
      ],
      "occurrences": 2,
      "sourceId": "color-28"
    },
    {
      "value": "#000000",
      "cssValue": "oklab(0 0 0 / 0.05)",
      "alpha": 0.050980392156862744,
      "appliedAs": [
        "control-background"
      ],
      "occurrences": 2,
      "sourceId": "color-29"
    },
    {
      "value": "#E8615F",
      "cssValue": "rgb(232, 97, 95)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 1,
      "sourceId": "color-30"
    },
    {
      "value": "#5856D6",
      "cssValue": "rgb(88, 86, 214)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 1,
      "sourceId": "color-31"
    },
    {
      "value": "#000000",
      "cssValue": "oklab(0 0 0 / 0.55)",
      "alpha": 0.5490196078431373,
      "appliedAs": [
        "svg-stroke"
      ],
      "occurrences": 5,
      "sourceId": "color-33"
    },
    {
      "value": "#AF52DE",
      "cssValue": "rgb(175, 82, 222)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 1,
      "sourceId": "color-34"
    },
    {
      "value": "#1F9E8E",
      "cssValue": "rgb(31, 158, 142)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 1,
      "sourceId": "color-35"
    }
  ],
  "functionalPalette": [
    {
      "hex": "#F4F4F4",
      "name": "canvas",
      "role": "canvas",
      "source": "computed",
      "evidence": "color-1: computed rgb(244, 244, 244); AI role: #F4F4F4 used as the primary light background color.",
      "sampleId": "color-1",
      "confidence": 0.95
    },
    {
      "hex": "#000000",
      "name": "text",
      "role": "text",
      "source": "computed",
      "evidence": "color-3: computed rgb(0, 0, 0); AI role: #000000 used for primary headings and text on light backgrounds.",
      "sampleId": "color-3",
      "confidence": 0.95
    },
    {
      "hex": "#E0E0E3",
      "name": "border",
      "role": "border",
      "source": "computed",
      "evidence": "color-19: computed rgb(224, 224, 227); AI role: #E0E0E3 used for dividers in the FAQ and footer sections.",
      "sampleId": "color-19",
      "confidence": 0.95
    },
    {
      "hex": "#FFFFFF",
      "name": "surface",
      "role": "surface",
      "source": "computed",
      "evidence": "color-4: computed rgb(255, 255, 255); AI role: #FFFFFF used for badge backgrounds and some UI elements.",
      "sampleId": "color-4",
      "confidence": 0.9
    },
    {
      "hex": "#6C6C72",
      "name": "muted text",
      "role": "muted-text",
      "source": "computed",
      "evidence": "color-7: computed rgb(108, 108, 114); AI role: #6C6C72 used for secondary text and descriptions.",
      "sampleId": "color-7",
      "confidence": 0.9
    },
    {
      "hex": "#111113",
      "name": "canvas",
      "role": "canvas",
      "source": "computed",
      "evidence": "color-5: computed rgb(17, 17, 19); AI role: #111113 used for dark section backgrounds.",
      "sampleId": "color-5",
      "confidence": 0.85
    }
  ]
}
```

### Design tokens

```json
{
  "radius": "High border-radius on interactive elements and product mockups.",
  "density": "Low density, prioritizing whitespace and large imagery over dense information.",
  "evidence": "Observed from the DOM/CSS facts: pill buttons, #E0E0E3 borders on FAQ, large font sizes, and centered alignment in screenshots.",
  "borderStyle": "Subtle, 1px solid light gray borders used sparingly for separation in lists (FAQ).",
  "buttonStyle": "Solid fill (black or white depending on background) with pill-shaped corners and no borders.",
  "cornerStyle": "Fully rounded (pill-shaped) for buttons, and large smooth radii for product cards.",
  "contentWidth": "Centered layout with a constrained max-width for text blocks to maintain readability.",
  "spacingRhythm": "Generous vertical spacing between sections, creating a relaxed and focused reading experience."
}
```

### Reconstruction specification

This is the implementation contract for the captured desktop viewport. Prefer section-specific facts here over general website descriptions.

- Root: 1440×608px; block; padding {"top":"0px","right":"0px","bottom":"0px","left":"0px"}; gap normal; background rgba(0, 0, 0, 0); radius 0px.
- Representative content widths: 720, 576px.
- Layout containers: 1; cards/surfaces: 0; media elements: 12; browser animations: 0.

#### Container, grid, and spacing

```json
{
  "viewport": {
    "width": 1440,
    "captureBounds": {
      "top": 64,
      "bottom": 608,
      "pageHeight": 9775
    }
  },
  "container": {
    "size": "1440×608px",
    "position": "x 0px, y 0px",
    "display": "block",
    "positionMode": "relative",
    "padding": {
      "top": "0px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "margin": {
      "top": "0px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "gap": "normal",
    "columns": "not captured",
    "background": "rgba(0, 0, 0, 0)",
    "radius": "0px",
    "border": "0px solid rgb(224, 224, 227)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "observedGapsPx": [],
    "representativeContentWidthsPx": [
      720,
      576
    ]
  },
  "columns": [
    {
      "element": "button · ✕",
      "size": "17×17px",
      "position": "x 1213px, y 360px",
      "display": "grid",
      "template": "15.1094px",
      "direction": "row",
      "gap": "normal"
    }
  ]
}
```

#### Cards and surfaces

```json
{
  "cards": [],
  "surfaces": {
    "radii": [
      "3.35544e+07px"
    ],
    "borders": [],
    "shadows": [
      "rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, oklab(0 0 0 / 0.05) 0px 0px 0px 1px, rgba(0, 0, 0, 0) 0px 0px 0px 0px"
    ]
  }
}
```

#### Media treatment

```json
[
  {
    "element": "img · min-h-0 w-full flex-1 object-cover",
    "size": "192×225px",
    "position": "x 1249px, y 105px",
    "aspectRatio": 0.9,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/pink.webp"
  },
  {
    "element": "img · min-h-0 w-full flex-1 object-cover",
    "size": "174×208px",
    "position": "x 84px, y 109px",
    "aspectRatio": 0.8,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/blue.webp"
  },
  {
    "element": "img · absolute inset-0 size-full scale-125 object-cover blur-xl",
    "size": "210×136px",
    "position": "x 1219px, y 283px",
    "aspectRatio": 1.5,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/pink.webp"
  },
  {
    "element": "img · absolute inset-0 size-full scale-125 object-cover blur-xl",
    "size": "190×125px",
    "position": "x 94px, y 274px",
    "aspectRatio": 1.5,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/blue.webp"
  },
  {
    "element": "img · min-h-0 w-full flex-1 object-cover",
    "size": "137×166px",
    "position": "x 247px, y 352px",
    "aspectRatio": 0.8,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/blue.webp"
  },
  {
    "element": "img · min-h-0 w-full flex-1 object-cover",
    "size": "113×128px",
    "position": "x -8px, y 382px",
    "aspectRatio": 0.9,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/coast.webp"
  },
  {
    "element": "img · min-h-0 w-full flex-1 object-cover",
    "size": "108×127px",
    "position": "x 1375px, y 349px",
    "aspectRatio": 0.9,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/pink.webp"
  },
  {
    "element": "img · absolute inset-0 size-full scale-125 object-cover blur-xl",
    "size": "157×86px",
    "position": "x 222px, y 492px",
    "aspectRatio": 1.8,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/blue.webp"
  },
  {
    "element": "img · min-h-0 w-full flex-1 object-cover",
    "size": "89×104px",
    "position": "x 353px, y 59px",
    "aspectRatio": 0.9,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/blue.webp"
  },
  {
    "element": "img · absolute inset-0 size-full scale-125 object-cover blur-xl",
    "size": "132×68px",
    "position": "x -9px, y 492px",
    "aspectRatio": 1.9,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/coast.webp"
  },
  {
    "element": "img · h-[3.375rem] w-auto",
    "size": "162×54px",
    "position": "x 639px, y 420px",
    "aspectRatio": 3,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badges/app-store-black.svg"
  },
  {
    "element": "img · absolute inset-0 size-full scale-125 object-cover blur-xl",
    "size": "127×68px",
    "position": "x 1359px, y 458px",
    "aspectRatio": 1.9,
    "objectFit": "cover",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://badgey.marcoluthi.com/badgey/photos/pink.webp"
  }
]
```

#### Browser-exposed animation parameters

```json
[]
```

### Measured geometry, surfaces, media, and animation

These raw values come from the saved element map and computed styles. Empty arrays mean the fact was not captured; they are not permission to invent source values.

```json
{
  "schema": "little-details-section-measurements-v1",
  "source": "saved DOM/CSS element and animation maps",
  "capturedAt": "2026-11-03T04:53:27.913Z",
  "viewportWidth": 1440,
  "bounds": {
    "top": 64,
    "bottom": 608,
    "pageHeight": 9775
  },
  "root": {
    "id": "ld-11",
    "tag": "section",
    "role": null,
    "label": "Alex CheniOS Engineer · SpeakerPriya NairSpeakerJonas KellerOrganiser✕badgey.marcoluthi.comMaya Broo",
    "rect": {
      "x": 0,
      "y": 0,
      "width": 1440,
      "height": 608
    },
    "display": "block",
    "position": "relative",
    "padding": {
      "top": "0px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "margin": {
      "top": "0px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "gap": "normal",
    "columns": null,
    "background": "rgba(0, 0, 0, 0)",
    "radius": "0px",
    "border": "0px solid rgb(224, 224, 227)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "gapsPx": [],
    "representativeContentWidthsPx": [
      720,
      576
    ]
  },
  "columns": [
    {
      "id": "ld-59",
      "tag": "button",
      "role": null,
      "label": "✕",
      "rect": {
        "x": 1213,
        "y": 360,
        "width": 17,
        "height": 17
      },
      "display": "grid",
      "columns": "15.1094px",
      "direction": "row",
      "gap": "normal"
    }
  ],
  "cards": [],
  "surfaces": {
    "radii": [
      "3.35544e+07px"
    ],
    "borders": [],
    "shadows": [
      "rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, oklab(0 0 0 / 0.05) 0px 0px 0px 1px, rgba(0, 0, 0, 0) 0px 0px 0px 0px"
    ]
  },
  "media": [
    {
      "id": "ld-32",
      "tag": "img",
      "role": null,
      "label": "min-h-0 w-full flex-1 object-cover",
      "rect": {
        "x": 1249,
        "y": 105,
        "width": 192,
        "height": 225
      },
      "aspectRatio": 0.9,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/pink.webp",
        "naturalWidth": 656,
        "naturalHeight": 696,
        "alt": "Priya Nair's Badgey badge photo: an abstract colour swirl"
      }
    },
    {
      "id": "ld-19",
      "tag": "img",
      "role": null,
      "label": "min-h-0 w-full flex-1 object-cover",
      "rect": {
        "x": 84,
        "y": 109,
        "width": 174,
        "height": 208
      },
      "aspectRatio": 0.8,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/blue.webp",
        "naturalWidth": 648,
        "naturalHeight": 688,
        "alt": "Alex Chen's Badgey badge photo: an abstract blue swirl"
      }
    },
    {
      "id": "ld-34",
      "tag": "img",
      "role": null,
      "label": "absolute inset-0 size-full scale-125 object-cover blur-xl",
      "rect": {
        "x": 1219,
        "y": 283,
        "width": 210,
        "height": 136
      },
      "aspectRatio": 1.5,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/pink.webp",
        "naturalWidth": 656,
        "naturalHeight": 696,
        "alt": "Blurred backdrop of Priya Nair's badge photo behind the name and role"
      }
    },
    {
      "id": "ld-21",
      "tag": "img",
      "role": null,
      "label": "absolute inset-0 size-full scale-125 object-cover blur-xl",
      "rect": {
        "x": 94,
        "y": 274,
        "width": 190,
        "height": 125
      },
      "aspectRatio": 1.5,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/blue.webp",
        "naturalWidth": 648,
        "naturalHeight": 688,
        "alt": "Blurred backdrop of Alex Chen's badge photo behind the name and role"
      }
    },
    {
      "id": "ld-45",
      "tag": "img",
      "role": null,
      "label": "min-h-0 w-full flex-1 object-cover",
      "rect": {
        "x": 247,
        "y": 352,
        "width": 137,
        "height": 166
      },
      "aspectRatio": 0.8,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/blue.webp",
        "naturalWidth": 648,
        "naturalHeight": 688,
        "alt": "Jonas Keller's Badgey badge photo: an abstract colour swirl"
      }
    },
    {
      "id": "ld-71",
      "tag": "img",
      "role": null,
      "label": "min-h-0 w-full flex-1 object-cover",
      "rect": {
        "x": -8,
        "y": 382,
        "width": 113,
        "height": 128
      },
      "aspectRatio": 0.9,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/coast.webp",
        "naturalWidth": 800,
        "naturalHeight": 906,
        "alt": "Maya Brooks's Badgey badge photo: an aerial view of waves breaking on a sandy beach"
      }
    },
    {
      "id": "ld-84",
      "tag": "img",
      "role": null,
      "label": "min-h-0 w-full flex-1 object-cover",
      "rect": {
        "x": 1375,
        "y": 349,
        "width": 108,
        "height": 127
      },
      "aspectRatio": 0.9,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/pink.webp",
        "naturalWidth": 656,
        "naturalHeight": 696,
        "alt": "Emma Rossi's Badgey badge photo: an abstract colour swirl"
      }
    },
    {
      "id": "ld-47",
      "tag": "img",
      "role": null,
      "label": "absolute inset-0 size-full scale-125 object-cover blur-xl",
      "rect": {
        "x": 222,
        "y": 492,
        "width": 157,
        "height": 86
      },
      "aspectRatio": 1.8,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/blue.webp",
        "naturalWidth": 648,
        "naturalHeight": 688,
        "alt": "Blurred backdrop of Jonas Keller's badge photo behind the name and role"
      }
    },
    {
      "id": "ld-97",
      "tag": "img",
      "role": null,
      "label": "min-h-0 w-full flex-1 object-cover",
      "rect": {
        "x": 353,
        "y": 59,
        "width": 89,
        "height": 104
      },
      "aspectRatio": 0.9,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/blue.webp",
        "naturalWidth": 648,
        "naturalHeight": 688,
        "alt": "Leo Martin's Badgey badge photo: an abstract colour swirl"
      }
    },
    {
      "id": "ld-73",
      "tag": "img",
      "role": null,
      "label": "absolute inset-0 size-full scale-125 object-cover blur-xl",
      "rect": {
        "x": -9,
        "y": 492,
        "width": 132,
        "height": 68
      },
      "aspectRatio": 1.9,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/coast.webp",
        "naturalWidth": 800,
        "naturalHeight": 906,
        "alt": "Blurred backdrop of Maya Brooks's badge photo behind the name and role"
      }
    },
    {
      "id": "ld-120",
      "tag": "img",
      "role": null,
      "label": "h-[3.375rem] w-auto",
      "rect": {
        "x": 639,
        "y": 420,
        "width": 162,
        "height": 54
      },
      "aspectRatio": 3,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badges/app-store-black.svg",
        "naturalWidth": 120,
        "naturalHeight": 40,
        "alt": "Download Badgey on the App Store"
      }
    },
    {
      "id": "ld-86",
      "tag": "img",
      "role": null,
      "label": "absolute inset-0 size-full scale-125 object-cover blur-xl",
      "rect": {
        "x": 1359,
        "y": 458,
        "width": 127,
        "height": 68
      },
      "aspectRatio": 1.9,
      "objectFit": "cover",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": {
        "src": "https://badgey.marcoluthi.com/badgey/photos/pink.webp",
        "naturalWidth": 656,
        "naturalHeight": 696,
        "alt": "Blurred backdrop of Emma Rossi's badge photo behind the name and role"
      }
    }
  ],
  "animations": [],
  "coverage": {
    "elementsInSection": 35,
    "cards": 0,
    "media": 12,
    "animations": 0
  },
  "limitations": [
    "Values describe the captured desktop viewport and may change at other breakpoints.",
    "Transforms, sticky layers, and virtualized content can make the inferred section root approximate.",
    "Animations include browser-exposed Web Animations API state; CSS or script motion that was inactive at capture time may be absent."
  ]
}
```

### Observed motion

No timestamped authored motion is attached. Use only restrained baseline transitions.

The browser animation records above are deterministic parameters captured from active browser animations. The timestamped observations describe what Gemini saw in the video. Treat them as complementary evidence. When either source is empty or they conflict, state the uncertainty instead of inventing timing or easing.

### Responsive contract

- Measured viewport: 1440px wide.
- Mobile/tablet values: not measured by this section evidence unless a separate capture is explicitly listed.
- Preserve hierarchy and sequence; collapse simultaneous columns only where needed, maintain media aspect ratios, and verify touch targets and text wrapping at target breakpoints.

### Structure versus visual skin

- Preserve: content hierarchy, layout relationships, section rhythm, interaction purpose.
- Adapt: brand colors, font family, copy, imagery, icons, decorative details.
- Rule: Preserve the observed design logic while creating original branding, copy, assets, and implementation details.

### Adaptation and dependencies

- Effort: Not assessed
- What transfers: Documented hierarchy and composition
- Dependencies: None recorded
- Guidance: Adapt the pattern to the new product and content.

### Evidence readiness

- Coverage: 7/7
- Can build: Yes
- Missing facts: timestamped authored motion
- Warning: Buildable with adaptations for these unsupported facts: timestamped authored motion.

### Agent implementation prompt

Create an original hero section inspired by the design evidence titled “Centered headline with floating badge cards”.

Purpose: hero section from the Home page of Badgey.

Structure: 1440×608px root; block. Source layout label: 1440×608px root; block. Preserve the documented hierarchy and relationships; exact measurements were not deterministically captured.

Visual signature to preserve at the pattern level: rgba(0, 0, 0, 0) with 1440×608px root; block. Inspect the crop for image and content hierarchy.

Components: Navigation Bar, Hero, Floating Product Card, Feature Collection, FAQ Accordion, Newsletter Form, Footer.

Style direction: minimal, corporate, soft, apple-esque.

Observed crop: 1440×544px (2.647:1). Treat this as evidence of composition, not a mandatory output size.

Typography evidence: {"role":"display","size":"104px","family":null,"source":"computed","traits":"Regular","weight":"300","evidence":"font-3: computed CSS at 1440×1000; AI role: 104px weight 300 used for the main hero heading.","sampleId":"font-3","confidence":0.95,"lineHeight":"98.8px","letterSpacing":"-3.1px"} {"role":"heading","size":"72px","family":null,"source":"computed","traits":"Regular","weight":"300","evidence":"font-1: computed CSS at 1440×1000; AI role: 72px weight 300 used for primary section headings.","sampleId":"font-1","confidence":0.95,"lineHeight":"72px","letterSpacing":"-1.8px"} {"role":"body","size":"18px","family":null,"source":"computed","traits":"Regular","weight":"400","evidence":"font-6: computed CSS at 1440×1000; AI role: 18px weight 400 used for descriptive body paragraphs.","sampleId":"font-6","confidence":0.9,"lineHeight":"29.3px","letterSpacing":"normal"}

Color evidence: {"hex":"#F4F4F4","name":"canvas","role":"canvas","source":"computed","evidence":"color-1: computed rgb(244, 244, 244); AI role: #F4F4F4 used as the primary light background color.","sampleId":"color-1","confidence":0.95} {"hex":"#000000","name":"text","role":"text","source":"computed","evidence":"color-3: computed rgb(0, 0, 0); AI role: #000000 used for primary headings and text on light backgrounds.","sampleId":"color-3","confidence":0.95} {"hex":"#E0E0E3","name":"border","role":"border","source":"computed","evidence":"color-19: computed rgb(224, 224, 227); AI role: #E0E0E3 used for dividers in the FAQ and footer sections.","sampleId":"color-19","confidence":0.95} {"hex":"#FFFFFF","name":"surface","role":"surface","source":"computed","evidence":"color-4: computed rgb(255, 255, 255); AI role: #FFFFFF used for badge backgrounds and some UI elements.","sampleId":"color-4","confidence":0.9} {"hex":"#6C6C72","name":"muted text","role":"muted-text","source":"computed","evidence":"color-7: computed rgb(108, 108, 114); AI role: #6C6C72 used for secondary text and descriptions.","sampleId":"color-7","confidence":0.9} {"hex":"#111113","name":"canvas","role":"canvas","source":"computed","evidence":"color-5: computed rgb(17, 17, 19); AI role: #111113 used for dark section backgrounds.","sampleId":"color-5","confidence":0.85}

Typography measured inside this section: {"id":"font-3","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"300","size":"104px","lineHeight":"98.8px","letterSpacing":"-3.1px","traits":"Regular","count":1,"contexts":[{"tag":"h1","text":"Wear your name.","top":200,"property":"font"}]} {"id":"font-11","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"500","size":"16px","lineHeight":"24px","letterSpacing":"normal","traits":"Regular","count":2,"contexts":[{"tag":"p","text":"Name badge app for iPhone","top":160,"property":"font"},{"tag":"p","text":"Promo codes","top":6502,"property":"font"}]} {"id":"font-13","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"300","size":"12.8px","lineHeight":"14.7px","letterSpacing":"-0.3px","traits":"Regular","count":2,"contexts":[{"tag":"p","text":"Maya Brooks","top":521,"property":"font"},{"tag":"p","text":"Emma Rossi","top":481,"property":"font"}]} {"id":"font-14","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"300","size":"5.1px","lineHeight":"7.7px","letterSpacing":"normal","traits":"Regular","count":2,"contexts":[{"tag":"p","text":"Travel Writer","top":537,"property":"font"},{"tag":"p","text":"Designer","top":497,"property":"font"}]} {"id":"font-16","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"300","size":"21.6px","lineHeight":"24.8px","letterSpacing":"-0.5px","traits":"Regular","count":1,"contexts":[{"tag":"p","text":"Priya Nair","top":296,"property":"font"}]} {"id":"font-17","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"300","size":"20px","lineHeight":"23px","letterSpacing":"-0.5px","traits":"Regular","count":1,"contexts":[{"tag":"p","text":"Alex Chen","top":281,"property":"font"}]} {"id":"font-18","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"400","size":"20px","lineHeight":"32.5px","letterSpacing":"normal","traits":"Regular","count":1,"contexts":[{"tag":"p","text":"Badgey turns your iPhone into a name badge that faces the people you meet, on a lanyard or in your p","top":323,"property":"font"}]} {"id":"font-20","family":null,"fontStack":"-apple-system, \"system-ui\", Inter, \"Inter Fallback\", ui-sans-serif, system-ui, sans-serif","weight":"300","size":"16px","lineHeight":"18.4px","letterSpacing":"-0.4px","traits":"Regular","count":1,"contexts":[{"tag":"p","text":"Jonas Keller","top":500,"property":"font"}]}

Colors measured inside this section: {"id":"color-3","hex":"#000000","alpha":1,"cssValue":"rgb(0, 0, 0)","count":20,"contexts":[{"tag":"p","text":"Priya Nair","top":296,"property":"text"},{"tag":"svg","text":"","top":403,"property":"svg-fill"},{"tag":"path","text":"","top":403,"property":"svg-fill"}]} {"id":"color-4","hex":"#FFFFFF","alpha":1,"cssValue":"rgb(255, 255, 255)","count":62,"contexts":[{"tag":"p","text":"Alex Chen","top":281,"property":"text"},{"tag":"div","text":"✕badgey.marcoluthi.com","top":342,"property":"background"},{"tag":"span","text":"Swing","top":802,"property":"text"}]} {"id":"color-5","hex":"#111113","alpha":1,"cssValue":"rgb(17, 17, 19)","count":17,"contexts":[{"tag":"a","text":"Badgey","top":10,"property":"text"},{"tag":"a","text":"Download","top":16,"property":"control-background"},{"tag":"h1","text":"Wear your name.","top":200,"property":"text"}]} {"id":"color-7","hex":"#6C6C72","alpha":1,"cssValue":"rgb(108, 108, 114)","count":29,"contexts":[{"tag":"p","text":"Name badge app for iPhone","top":160,"property":"text"},{"tag":"svg","text":"","top":7815,"property":"svg-stroke"},{"tag":"path","text":"","top":7821,"property":"svg-stroke"}]} {"id":"color-8","hex":"#000000","alpha":0.34901960784313724,"cssValue":"oklab(0 0 0 / 0.35)","count":9,"contexts":[{"tag":"span","text":"","top":272,"property":"background"}]} {"id":"color-10","hex":"#FFFFFF","alpha":0.5490196078431373,"cssValue":"oklab(0.999994 0.0000455678 0.0000200868 / 0.55)","count":4,"contexts":[{"tag":"span","text":"","top":286,"property":"background"}]} {"id":"color-12","hex":"#FFFFFF","alpha":0.6,"cssValue":"oklab(0.999994 0.0000455677 0.0000200868 / 0.6)","count":11,"contexts":[{"tag":"p","text":"iOS Engineer · Speaker","top":305,"property":"text"},{"tag":"span","text":"+","top":1211,"property":"background"}]} {"id":"color-15","hex":"#000000","alpha":0.5019607843137255,"cssValue":"oklab(0 0 0 / 0.5)","count":6,"contexts":[{"tag":"p","text":"Speaker","top":321,"property":"text"},{"tag":"span","text":"New Badge","top":142,"property":"text"}]}

Exact section measurements from the saved element map: root {"rect":{"x":0,"y":0,"width":1440,"height":608},"padding":{"top":"0px","right":"0px","bottom":"0px","left":"0px"},"gap":"normal","columns":null,"overflow":"visible"}; spacing {"gapsPx":[],"representativeContentWidthsPx":[720,576]}; surfaces {"radii":["3.35544e+07px"],"borders":[],"shadows":["rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, oklab(0 0 0 / 0.05) 0px 0px 0px 1px, rgba(0, 0, 0, 0) 0px 0px 0px 0px"]}; media [{"tag":"img","rect":{"x":1249,"y":105,"width":192,"height":225},"aspectRatio":0.9,"objectFit":"cover","objectPosition":"50% 50%","radius":"0px"},{"tag":"img","rect":{"x":84,"y":109,"width":174,"height":208},"aspectRatio":0.8,"objectFit":"cover","objectPosition":"50% 50%","radius":"0px"},{"tag":"img","rect":{"x":1219,"y":283,"width":210,"height":136},"aspectRatio":1.5,"objectFit":"cover","objectPosition":"50% 50%","radius":"0px"},{"tag":"img","rect":{"x":94,"y":274,"width":190,"height":125},"aspectRatio":1.5,"objectFit":"cover","objectPosition":"50% 50%","radius":"0px"}]

Do not invent signature motion. Use only restrained baseline transitions if the product needs them.

Transfer the documented hierarchy and composition rather than source copy or assets.

No explicit dependencies were recorded.

Adapt the pattern to the new product and content.

Use new copy, imagery, branding, and implementation details. Do not reproduce the source website or its proprietary assets.
