# Overview — Section Design Reference

Schema: Design Details SECTION.md v3.2
Source: https://www.lightspark.com/
Website: Lightspark
Section ID: 239766f6-607a-46d8-88b7-2b9afb423b35
Status: deterministic evidence captured; editorial AI review pending

## Purpose

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

## Layout

1220×512px root; block

## Visual signature

minimal, typographic, soft, glassmorphic, fintech-modern treatment at 1440×512px. The crop spans 1612–2124px of a 7682px page.

## Components

- Navigation Bar
- Hero
- Primary Button
- Ghost Button
- Logo Strip
- Feature Collection
- Footer
- Floating UI Cards
- Hairline Grid Layout

## 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: features
- Source type: features
- Structure: 1220×512px root; block
- Layout: 1220×512px root; block
- Styles: minimal, typographic, soft, glassmorphic, fintech-modern
- Components: Navigation Bar, Hero, Primary Button, Ghost Button, Logo Strip, Feature Collection, Footer, Floating UI Cards, Hairline Grid Layout
- Purpose: features section from the Home page of Lightspark.
- Visual signature: rgba(0, 0, 0, 0) with 1220×512px root; block. Inspect the crop for image and content hierarchy.

### Crop and composition

- Crop: 1440×512px; aspect ratio 2.813:1
- Page bounds: 1612–2124px of 7682px
- 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": "Suisse Intl",
      "stack": "\"Suisse Intl\", sans-serif",
      "size": "36px",
      "weight": "400",
      "lineHeight": "43.9px",
      "letterSpacing": "-1.1px",
      "sample": "65+",
      "element": "span",
      "occurrences": 11,
      "sourceId": "font-1"
    },
    {
      "role": "body/supporting copy",
      "family": "Suisse Intl",
      "stack": "\"Suisse Intl\", sans-serif",
      "size": "13px",
      "weight": "400",
      "lineHeight": "16.9px",
      "letterSpacing": "normal",
      "sample": "Launch global accounts, payments, cards, stablecoins, and more. All of it under your brand, with you",
      "element": "p",
      "occurrences": 13,
      "sourceId": "font-4"
    },
    {
      "role": "UI/supporting text",
      "family": "Suisse Intl VF",
      "stack": "\"Suisse Intl VF\", \"Suisse Intl\", sans-serif",
      "size": "8.5px",
      "weight": "400",
      "lineHeight": "11.1px",
      "letterSpacing": "normal",
      "sample": "01",
      "element": "span",
      "occurrences": 23,
      "sourceId": "font-7"
    },
    {
      "role": "UI/supporting text",
      "family": "Suisse Intl",
      "stack": "\"Suisse Intl\", sans-serif",
      "size": "10px",
      "weight": "400",
      "lineHeight": "13px",
      "letterSpacing": "normal",
      "sample": "Reach",
      "element": "span",
      "occurrences": 18,
      "sourceId": "font-8"
    }
  ],
  "siteRoles": [
    {
      "role": "display",
      "size": "48px",
      "family": "Suisse Intl",
      "source": "computed",
      "traits": "Regular",
      "weight": "400",
      "evidence": "font-3: computed CSS at 1440×1000; AI role: 48px Suisse Intl used for the main H1 'The API for money'.",
      "sampleId": "font-3",
      "confidence": 1,
      "lineHeight": "55.2px",
      "letterSpacing": "-1.9px"
    },
    {
      "role": "heading",
      "size": "36px",
      "family": "Suisse Intl",
      "source": "computed",
      "traits": "Regular",
      "weight": "400",
      "evidence": "font-1: computed CSS at 1440×1000; AI role: 36px Suisse Intl used for large metric callouts like '65+'.",
      "sampleId": "font-1",
      "confidence": 0.9,
      "lineHeight": "43.9px",
      "letterSpacing": "-1.1px"
    },
    {
      "role": "body",
      "size": "20px",
      "family": "Suisse Intl",
      "source": "computed",
      "traits": "Regular",
      "weight": "400",
      "evidence": "font-5: computed CSS at 1440×1000; AI role: 20px Suisse Intl used for primary lead paragraphs and section descriptions.",
      "sampleId": "font-5",
      "confidence": 0.95,
      "lineHeight": "26px",
      "letterSpacing": "-0.6px"
    }
  ]
}
```

### 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": "#7C7C7C",
      "cssValue": "rgb(124, 124, 124)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "background"
      ],
      "occurrences": 42,
      "sourceId": "color-4"
    },
    {
      "value": "#272727",
      "cssValue": "rgba(38, 38, 35, 0.1)",
      "alpha": 0.10196078431372549,
      "appliedAs": [
        "border"
      ],
      "occurrences": 18,
      "sourceId": "color-13"
    }
  ],
  "functionalPalette": [
    {
      "hex": "#F8F8F7",
      "name": "canvas",
      "role": "canvas",
      "source": "computed",
      "evidence": "color-1: computed rgb(248, 248, 247); AI role: #F8F8F7 off-white used as the primary background color for the majority of the page.",
      "sampleId": "color-1",
      "confidence": 1
    },
    {
      "hex": "#1A1A1A",
      "name": "text",
      "role": "text",
      "source": "computed",
      "evidence": "color-2: computed rgb(26, 26, 26); AI role: #1A1A1A used for primary typography including main headlines.",
      "sampleId": "color-2",
      "confidence": 1
    },
    {
      "hex": "#7C7C7C",
      "name": "muted text",
      "role": "muted-text",
      "source": "computed",
      "evidence": "color-4: computed rgb(124, 124, 124); AI role: #7C7C7C used for secondary, less prominent text like 'historical uptime'.",
      "sampleId": "color-4",
      "confidence": 0.95
    },
    {
      "hex": "#1A1A1A",
      "name": "primary action",
      "role": "primary-action",
      "source": "computed",
      "evidence": "color-2: computed rgb(26, 26, 26); AI role: #1A1A1A is also used as the background fill for primary CTA buttons.",
      "sampleId": "color-2",
      "confidence": 0.9
    },
    {
      "hex": "#F0F0EE",
      "name": "surface",
      "role": "surface",
      "source": "computed",
      "evidence": "color-5: computed rgb(240, 240, 238); AI role: #F0F0EE used as the subtle background for secondary buttons.",
      "sampleId": "color-5",
      "confidence": 0.8
    }
  ]
}
```

### Design tokens

```json
{
  "radius": "Buttons appear to use maximum border-radius (e.g., 999px), creating pill shapes.",
  "density": "Low density. The layout relies heavily on whitespace to draw focus to the scattered, colorful UI cards and crisp typography.",
  "evidence": "Observations derived from the visual rhythm of the hairline grid, DOM token mapping (color-13 for borders), and optical evaluation of button shapes and spacing.",
  "borderStyle": "Extremely subtle; structural dividers are solid but very low opacity (10%), creating hairline definitions without heavy contrast.",
  "buttonStyle": "Solid fills with contrasting text; primary buttons are dark pills, secondary buttons are light gray pills.",
  "cornerStyle": "Fully rounded (pill shape) for interactive elements like buttons and tags, while large structural cards have soft, medium radii.",
  "contentWidth": "Centered content with a constrained maximum width, flanked by large margins on larger viewports.",
  "spacingRhythm": "Airy and expansive, utilizing large margins to isolate the hero content and generous padding within grid cells."
}
```

### Reconstruction specification

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

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

#### Container, grid, and spacing

```json
{
  "viewport": {
    "width": 1440,
    "captureBounds": {
      "top": 1612,
      "bottom": 2124,
      "pageHeight": 7682
    }
  },
  "container": {
    "size": "1220×512px",
    "position": "x 110px, y 1612px",
    "display": "block",
    "positionMode": "static",
    "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 none rgb(2, 2, 2)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "observedGapsPx": [],
    "representativeContentWidthsPx": [
      1220,
      286
    ]
  },
  "columns": []
}
```

#### Cards and surfaces

```json
{
  "cards": [],
  "surfaces": {
    "radii": [],
    "borders": [],
    "shadows": []
  }
}
```

#### Media treatment

```json
[]
```

#### 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-10-13T02:27:12.174Z",
  "viewportWidth": 1440,
  "bounds": {
    "top": 1612,
    "bottom": 2124,
    "pageHeight": 7682
  },
  "root": {
    "id": "ld-538",
    "tag": "section",
    "role": null,
    "label": "Reach65+countries on local rails01Performance99.99%historical uptime02Integration2–5days to go live0",
    "rect": {
      "x": 110,
      "y": 1612,
      "width": 1220,
      "height": 512
    },
    "display": "block",
    "position": "static",
    "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 none rgb(2, 2, 2)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "gapsPx": [],
    "representativeContentWidthsPx": [
      1220,
      286
    ]
  },
  "columns": [],
  "cards": [],
  "surfaces": {
    "radii": [],
    "borders": [],
    "shadows": []
  },
  "media": [],
  "animations": [],
  "coverage": {
    "elementsInSection": 17,
    "cards": 0,
    "media": 0,
    "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 features section inspired by the design evidence titled “Overview”.

Purpose: features section from the Home page of Lightspark.

Structure: 1220×512px root; block. Source layout label: 1220×512px 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 1220×512px root; block. Inspect the crop for image and content hierarchy.

Components: Navigation Bar, Hero, Primary Button, Ghost Button, Logo Strip, Feature Collection, Footer, Floating UI Cards, Hairline Grid Layout.

Style direction: minimal, typographic, soft, glassmorphic, fintech-modern.

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

Typography evidence: {"role":"display","size":"48px","family":"Suisse Intl","source":"computed","traits":"Regular","weight":"400","evidence":"font-3: computed CSS at 1440×1000; AI role: 48px Suisse Intl used for the main H1 'The API for money'.","sampleId":"font-3","confidence":1,"lineHeight":"55.2px","letterSpacing":"-1.9px"} {"role":"heading","size":"36px","family":"Suisse Intl","source":"computed","traits":"Regular","weight":"400","evidence":"font-1: computed CSS at 1440×1000; AI role: 36px Suisse Intl used for large metric callouts like '65+'.","sampleId":"font-1","confidence":0.9,"lineHeight":"43.9px","letterSpacing":"-1.1px"} {"role":"body","size":"20px","family":"Suisse Intl","source":"computed","traits":"Regular","weight":"400","evidence":"font-5: computed CSS at 1440×1000; AI role: 20px Suisse Intl used for primary lead paragraphs and section descriptions.","sampleId":"font-5","confidence":0.95,"lineHeight":"26px","letterSpacing":"-0.6px"}

Color evidence: {"hex":"#F8F8F7","name":"canvas","role":"canvas","source":"computed","evidence":"color-1: computed rgb(248, 248, 247); AI role: #F8F8F7 off-white used as the primary background color for the majority of the page.","sampleId":"color-1","confidence":1} {"hex":"#1A1A1A","name":"text","role":"text","source":"computed","evidence":"color-2: computed rgb(26, 26, 26); AI role: #1A1A1A used for primary typography including main headlines.","sampleId":"color-2","confidence":1} {"hex":"#7C7C7C","name":"muted text","role":"muted-text","source":"computed","evidence":"color-4: computed rgb(124, 124, 124); AI role: #7C7C7C used for secondary, less prominent text like 'historical uptime'.","sampleId":"color-4","confidence":0.95} {"hex":"#1A1A1A","name":"primary action","role":"primary-action","source":"computed","evidence":"color-2: computed rgb(26, 26, 26); AI role: #1A1A1A is also used as the background fill for primary CTA buttons.","sampleId":"color-2","confidence":0.9} {"hex":"#F0F0EE","name":"surface","role":"surface","source":"computed","evidence":"color-5: computed rgb(240, 240, 238); AI role: #F0F0EE used as the subtle background for secondary buttons.","sampleId":"color-5","confidence":0.8}

Typography measured inside this section: {"id":"font-1","family":"Suisse Intl","fontStack":"\"Suisse Intl\", sans-serif","weight":"400","size":"36px","lineHeight":"43.9px","letterSpacing":"-1.1px","traits":"Regular","count":11,"contexts":[{"tag":"span","text":"65+","top":1838,"property":"font"},{"tag":"span","text":"99.99%","top":1838,"property":"font"},{"tag":"span","text":"2–5","top":1838,"property":"font"}]} {"id":"font-4","family":"Suisse Intl","fontStack":"\"Suisse Intl\", sans-serif","weight":"400","size":"13px","lineHeight":"16.9px","letterSpacing":"normal","traits":"Regular","count":13,"contexts":[{"tag":"p","text":"Launch global accounts, payments, cards, stablecoins, and more. All of it under your brand, with you","top":508,"property":"font"},{"tag":"span","text":"countries on local rails","top":1882,"property":"font"},{"tag":"span","text":"historical uptime","top":1882,"property":"font"}]} {"id":"font-7","family":"Suisse Intl VF","fontStack":"\"Suisse Intl VF\", \"Suisse Intl\", sans-serif","weight":"400","size":"8.5px","lineHeight":"11.1px","letterSpacing":"normal","traits":"Regular","count":23,"contexts":[{"tag":"span","text":"01","top":2113,"property":"font"},{"tag":"span","text":"02","top":2113,"property":"font"},{"tag":"span","text":"03","top":2113,"property":"font"}]} {"id":"font-8","family":"Suisse Intl","fontStack":"\"Suisse Intl\", sans-serif","weight":"400","size":"10px","lineHeight":"13px","letterSpacing":"normal","traits":"Regular","count":18,"contexts":[{"tag":"span","text":"Reach","top":1612,"property":"font"},{"tag":"span","text":"Performance","top":1612,"property":"font"},{"tag":"span","text":"Integration","top":1612,"property":"font"}]}

Colors measured inside this section: {"id":"color-4","hex":"#7C7C7C","alpha":1,"cssValue":"rgb(124, 124, 124)","count":42,"contexts":[{"tag":"p","text":"Launch global accounts, payments, cards, stablecoins, and more. All of it under your brand, with you","top":508,"property":"text"},{"tag":"span","text":"Reach","top":1612,"property":"text"},{"tag":"span","text":"","top":4560,"property":"background"}]} {"id":"color-13","hex":"#272727","alpha":0.10196078431372549,"cssValue":"rgba(38, 38, 35, 0.1)","count":18,"contexts":[{"tag":"div","text":"Reach65+countries on local rails01","top":1612,"property":"border"},{"tag":"section","text":"Get startedThe easiest money infrastructure to build on. See it live with our team, or go straight t","top":5274,"property":"border"},{"tag":"a","text":"DocumentationView API docs→01","top":5478,"property":"border"}]}

Exact section measurements from the saved element map: root {"rect":{"x":110,"y":1612,"width":1220,"height":512},"padding":{"top":"0px","right":"0px","bottom":"0px","left":"0px"},"gap":"normal","columns":null,"overflow":"visible"}; spacing {"gapsPx":[],"representativeContentWidthsPx":[1220,286]}; surfaces {"radii":[],"borders":[],"shadows":[]}

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.
