# Timeline over video player

Schema: Design Details SECTION.md v3.2
Website: DualEntry
Source: https://www.dualentry.com/
Source section IDs: 1a5ff9f0-0bad-4457-b079-a5e7e6f13a9e
Status: AI analysed; vocabulary promotion is automated

## Builder's note

What makes it work:
- A centered vertical stack of heading, button, timeline and video gives a clear reading order with generous white space between each block.
- The dotted horizontal timeline sits directly above the video, so the 'fast migration' claim is backed by the footage right beneath it.
- Near-black text on a pure white canvas with pale grey borders keeps the page calm, so the large office photo thumbnail becomes the focal point.

What a screenshot can't show:
- The recording showed no motion, so there is no timing for hover, playback or scroll behaviour.
- Measured type is small and plain: 16px medium with 24px line height for timeline labels, and 14px regular with 21px line height for secondary text, both with normal letter spacing. Content widths run about 1238px for the video, 700px for text and 302px for smaller items.

Borrow: Place a simple milestone timeline directly over proof footage so the claim and the evidence read as one story.
Leave alone: Don't copy DualEntry's exact dotted gradient timeline, its Twklausanne typeface (a clean grotesque like Inter would do) or its office-presenter thumbnail.

## Classification

- Type: process
- Layout: Centered content stacking a heading, a button, a horizontal timeline graphic, and a full-width video block.
- Styles: minimal, corporate, photographic
- Confidence: 95%

## Purpose and structure

A section detailing a migration process with a centered heading, a horizontal timeline graphic, and a large video player below.

Visual signature: Clean white section featuring a dotted horizontal timeline above a large office video thumbnail.

## Components

- section-heading
- button-solid
- horizontal-timeline
- video-player

## Typography

- Display: Twklausanne — 56px 400
- Heading: Twklausanne — 48px 400
- Body: Twklausanne — 16px 300

## Functional palette

- Text: text #1D1F20
- Canvas: canvas #FFFFFF
- Border: border #E4EBEC
- Surface: surface #1C1D1E

## Motion evidence

- No section-specific authored motion was established.

## Section quality

Overall: 58.24/100 (Competent)
Scored coverage: 85%

- Typography: 58 — Standard, clean sans-serif hierarchy (headline, logotype, body labels) with reasonable scale contrast. No distinctive typographic craft, custom ligatures, or expressive treatment beyond a competent corporate default. Next tier: Needs a more deliberate typographic voice—unusual pairing, scale tension, or kerning/weight details—to move beyond generic competence.
- Composition: 62 — Clear centered vertical stack with good whitespace separation between heading, CTA, timeline graphic, and video. The dotted timeline with gradient fill is a nice structural device that ties the narrative together, though the layout is fairly conventional and predictable. Next tier: Composition relies on a straightforward centered stack; no asymmetry, overlap, or unexpected spatial relationship that would elevate it to a strong/memorable layout.
- Motion: not_assessed — No motion_moments or animation evidence supplied; animations array is empty, so there is no timestamped evidence of visible change to judge. Next tier: Needs timestamped evidence of how the timeline gradient animates or video autoplay behavior to assess motion quality.
- Content: 56 — Content (headline, timeline labels, human-presenter video) is well integrated into the narrative of a fast migration process, and the video placement under the timeline supports the claim literally. Still a fairly standard talking-head video plus text pattern. Next tier: Would need more integrated content—e.g., timeline steps tied visually to video chapters or data visualization—to feel bespoke rather than templated.
- Originality: 54 — The dotted gradient timeline is a mildly distinctive touch, but the overall pattern (headline + CTA + timeline + video) is a common SaaS marketing template seen across many sites. Next tier: Needs a signature visual idea unique to this brand/section rather than a recognizable timeline-plus-video template.
- Adaptability: 60 — Structure is modular and clearly separable: heading/CTA block, timeline component, and video block are distinct DOM elements with consistent spacing tokens, making it straightforward to reskin or swap content. Next tier: Tight coupling of timeline dot positions to specific label widths and gradient fill percentage limits pure drag-and-drop reuse without recalculation.

Strengths:
- Clear narrative flow from promise (headline) to proof (timeline) to demonstration (video)
- Dotted horizontal timeline with gradient fill is a simple but effective progress metaphor
- Generous whitespace keeps the section legible and uncluttered
- Consistent use of rounded-corner buttons and light borders for visual cohesion

Weaknesses:
- Typography and layout follow a generic SaaS template without distinctive craft
- No visible motion evidence to assess transition quality
- Timeline-to-video relationship is implied rather than explicitly connected
- Video content is a standard talking-head clip without unique framing or overlay design

Why it does not reach the next tier: The section is clean and functional but every element—type scale, centered stack, timeline bar, video block—is a familiar corporate pattern without a distinguishing idea or craft detail that would make it memorable.

## Adaptation guidance

- Effort: Low
- Guidance: Swap video source, timeline labels, and heading copy; timeline dot spacing and gradient fill percentage will need manual recalibration per step count.

What transfers:
- Centered heading + CTA + horizontal timeline + video stacking pattern
- Dotted timeline with gradient progress fill as a step indicator
- Light border and rounded-corner button styling

Dependencies:
- Specific video asset and poster image
- Exact timeline step count and label text tied to layout spacing
- Brand color gradient used in timeline fill

## Living vocabulary

- No reusable vocabulary candidates were supported by this section.

Only terms with status `active` enter the public taxonomy. Deferred and proposed terms remain available to later AI passes; rejected terms remain as provenance so they are not repeatedly reinvented.

## Provenance and limitations

- Section boundaries and naming: Gemini Pro visual observation
- Motion observations: Gemini Pro direct-video analysis
- Quality judgment: Claude
- Exact design facts: browser/CSS extraction at website scope
- Rubric: Design Details section rubric 3.2 (Typography 20%, Composition 20%, Motion 15%, Content 15%, Originality 15%, Adaptability 15%)
- Motion not assessed due to lack of timestamped animation evidence
- No mobile/responsive layout evidence supplied
- Cannot verify exact font rendering or color accuracy beyond token hex values

## Usage guidance

Use this section as design evidence. Create an original implementation; do not reproduce the source copy, assets, or proprietary composition exactly.

## Build blueprint v3.2

### Purpose and classification

- Canonical type: steps
- Source type: process
- Structure: centered single-column
- Layout: Centered content stacking a heading, a button, a horizontal timeline graphic, and a full-width video block.
- Styles: minimal, corporate, photographic
- Components: section-heading, button-solid, horizontal-timeline, video-player
- Purpose: A section detailing a migration process with a centered heading, a horizontal timeline graphic, and a large video player below.
- Visual signature: Clean white section featuring a dotted horizontal timeline above a large office video thumbnail.
- Place on the page: 6 of 9, after Testimonials (`dualentry-com:C05`), before Logo strip (`dualentry-com:C07`)

### Crop and composition

- Crop: 1440×1292px; aspect ratio 1.115:1
- Page bounds: 3700–4992px of 6763px
- Guidance: Use a narrow central reading axis and deliberate scale contrast rather than adding unnecessary side content.

### 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": "body/supporting copy",
      "family": "Twklausanne",
      "stack": "Twklausanne, sans-serif",
      "size": "14px",
      "weight": "400",
      "lineHeight": "21px",
      "letterSpacing": "normal",
      "sample": "Login",
      "element": "p",
      "occurrences": 3,
      "sourceId": "font-11"
    },
    {
      "role": "UI/supporting text",
      "family": "Twklausanne",
      "stack": "Twklausanne, sans-serif",
      "size": "16px",
      "weight": "500",
      "lineHeight": "24px",
      "letterSpacing": "normal",
      "sample": "4-6 weeks",
      "element": "strong",
      "occurrences": 1,
      "sourceId": "font-19"
    }
  ],
  "siteRoles": [
    {
      "role": "display",
      "size": "56px",
      "family": "Twklausanne",
      "source": "computed",
      "traits": "Regular",
      "weight": "400",
      "evidence": "font-4: computed CSS at 1440×1000; AI role: Large 56px Twklausanne used for the main hero headline 'The AI ERP to end month-end'.",
      "sampleId": "font-4",
      "confidence": 0.95,
      "lineHeight": "61.6px",
      "letterSpacing": "normal"
    },
    {
      "role": "heading",
      "size": "48px",
      "family": "Twklausanne",
      "source": "computed",
      "traits": "Regular",
      "weight": "400",
      "evidence": "font-2: computed CSS at 1440×1000; AI role: 48px Twklausanne used for primary section headings like 'The accounting suite that runs while you lead.'",
      "sampleId": "font-2",
      "confidence": 0.9,
      "lineHeight": "52.8px",
      "letterSpacing": "normal"
    },
    {
      "role": "body",
      "size": "16px",
      "family": "Twklausanne",
      "source": "computed",
      "traits": "Regular",
      "weight": "300",
      "evidence": "font-7: computed CSS at 1440×1000; AI role: 16px Twklausanne used widely for body copy, subheadings, and buttons.",
      "sampleId": "font-7",
      "confidence": 0.85,
      "lineHeight": "24px",
      "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": "rgba(0, 0, 0, 0.1)",
      "alpha": 0.10196078431372549,
      "appliedAs": [
        "background"
      ],
      "occurrences": 1,
      "sourceId": "color-4"
    },
    {
      "value": "#BDCDD0",
      "cssValue": "rgb(189, 205, 208)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 7,
      "sourceId": "color-24"
    }
  ],
  "functionalPalette": [
    {
      "hex": "#1D1F20",
      "name": "text",
      "role": "text",
      "source": "computed",
      "evidence": "color-2: computed rgb(29, 31, 32); AI role: Dark grey (#1D1F20) used heavily for headings and primary text on light backgrounds.",
      "sampleId": "color-2",
      "confidence": 0.95
    },
    {
      "hex": "#FFFFFF",
      "name": "canvas",
      "role": "canvas",
      "source": "computed",
      "evidence": "color-3: computed rgb(255, 255, 255); AI role: White background dominates the feature and migration sections.",
      "sampleId": "color-3",
      "confidence": 0.9
    },
    {
      "hex": "#E4EBEC",
      "name": "border",
      "role": "border",
      "source": "computed",
      "evidence": "color-9: computed rgb(228, 235, 236); AI role: Light grey/blue (#E4EBEC) is used extensively for borders on feature cards and input fields.",
      "sampleId": "color-9",
      "confidence": 0.9
    },
    {
      "hex": "#1C1D1E",
      "name": "surface",
      "role": "surface",
      "source": "computed",
      "evidence": "color-18: computed rgb(28, 29, 30); AI role: Dark surface (#1C1D1E) used for the testimonial carousel and footer areas.",
      "sampleId": "color-18",
      "confidence": 0.85
    }
  ]
}
```

### Design tokens

```json
{
  "radius": "Medium border radius appears common on cards and buttons.",
  "density": "Moderate density; ample whitespace around main elements, but dense information packing within feature cards and footer links.",
  "evidence": "Observed via the bento-box feature grid, consistent button styling, and organized footer layout.",
  "borderStyle": "Subtle, thin solid borders (e.g., 1px) used to define cards and form elements.",
  "buttonStyle": "Solid white primary buttons on dark backgrounds, dark solid buttons on light backgrounds, with rounded corners.",
  "cornerStyle": "Consistent use of rounded corners on buttons, inputs, and feature cards.",
  "contentWidth": "Content is generally constrained to a central max-width, though background gradients and banners span full width.",
  "spacingRhythm": "Generous spacing between major sections, with tighter padding inside feature cards and UI components."
}
```

### Reconstruction specification

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

- Root: 1440×1292px; block; padding {"top":"0px","left":"0px","right":"0px","bottom":"0px"}; gap normal; background rgba(0, 0, 0, 0); radius 0px.
- Observed gaps: 10px.
- Representative content widths: 1238, 700, 302px.
- Layout containers: 0; cards/surfaces: 0; media elements: 11; browser animations: 0.

#### Container, grid, and spacing

```json
{
  "viewport": {
    "width": 1440,
    "captureBounds": {
      "top": 3700,
      "bottom": 4992,
      "pageHeight": 6763
    }
  },
  "container": {
    "size": "1440×1292px",
    "position": "x 0px, y 3700px",
    "display": "block",
    "positionMode": "static",
    "padding": {
      "top": "0px",
      "left": "0px",
      "right": "0px",
      "bottom": "0px"
    },
    "margin": {
      "top": "0px",
      "left": "0px",
      "right": "0px",
      "bottom": "0px"
    },
    "gap": "normal",
    "columns": "not captured",
    "background": "rgba(0, 0, 0, 0)",
    "radius": "0px",
    "border": "0px none rgba(61, 67, 68, 0.8)",
    "shadow": "none",
    "overflow": "hidden"
  },
  "spacing": {
    "observedGapsPx": [
      10
    ],
    "representativeContentWidthsPx": [
      1238,
      700,
      302
    ]
  },
  "columns": []
}
```

#### Cards and surfaces

```json
{
  "cards": [],
  "surfaces": {
    "radii": [
      "4px"
    ],
    "borders": [
      "1px solid rgba(255, 255, 255, 0.15)"
    ],
    "shadows": []
  }
}
```

#### Media treatment

```json
[
  {
    "element": "video · lazy-video",
    "size": "1238×696px",
    "position": "x 101px, y 4258px",
    "aspectRatio": 1.8,
    "objectFit": "contain",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "https://res.cloudinary.com/dly6ckatf/video/upload/v1762759327/de_next-day-migration_preview_v2_1_ve4awt.mp4"
  },
  {
    "element": "svg · svg",
    "size": "302×32px",
    "position": "x 569px, y 3780px",
    "aspectRatio": 9.4,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "20×20px",
    "position": "x 278px, y 4865px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "16×16px",
    "position": "x 472px, y 4867px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "6×6px",
    "position": "x 264px, y 4182px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "6×6px",
    "position": "x 415px, y 4182px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "6×6px",
    "position": "x 566px, y 4182px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "6×6px",
    "position": "x 717px, y 4182px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "6×6px",
    "position": "x 868px, y 4182px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "6×6px",
    "position": "x 1019px, y 4182px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "6×6px",
    "position": "x 1170px, y 4182px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  }
]
```

#### 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
{
  "root": {
    "id": "ld-2961",
    "gap": "normal",
    "tag": "section",
    "rect": {
      "x": 0,
      "y": 3700,
      "width": 1440,
      "height": 1292
    },
    "role": null,
    "label": "The best part? We move fast. Sign up today. Data in tomorrow.Schedule demo Get startedData ingested ",
    "border": "0px none rgba(61, 67, 68, 0.8)",
    "margin": {
      "top": "0px",
      "left": "0px",
      "right": "0px",
      "bottom": "0px"
    },
    "radius": "0px",
    "shadow": "none",
    "columns": null,
    "display": "block",
    "padding": {
      "top": "0px",
      "left": "0px",
      "right": "0px",
      "bottom": "0px"
    },
    "overflow": "hidden",
    "position": "static",
    "background": "rgba(0, 0, 0, 0)"
  },
  "cards": [],
  "media": [
    {
      "id": "ld-3121",
      "tag": "video",
      "rect": {
        "x": 101,
        "y": 4258,
        "width": 1238,
        "height": 696
      },
      "role": null,
      "label": "lazy-video",
      "media": {
        "src": "https://res.cloudinary.com/dly6ckatf/video/upload/v1762759327/de_next-day-migration_preview_v2_1_ve4awt.mp4",
        "poster": "https://cdn.prod.website-files.com/66bf861737ab5a556a15c52b/68cc2630851577d7c41aa2cd_c92fd7e8feaab298c7840dc5053229ae_nextday-image.webp",
        "duration": 5.717
      },
      "radius": "0px",
      "overflow": "clip",
      "objectFit": "contain",
      "aspectRatio": 1.8,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-2968",
      "tag": "svg",
      "rect": {
        "x": 569,
        "y": 3780,
        "width": 302,
        "height": 32
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 9.4,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3128",
      "tag": "svg",
      "rect": {
        "x": 278,
        "y": 4865,
        "width": 20,
        "height": 20
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3134",
      "tag": "svg",
      "rect": {
        "x": 472,
        "y": 4867,
        "width": 16,
        "height": 16
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3077",
      "tag": "svg",
      "rect": {
        "x": 264,
        "y": 4182,
        "width": 6,
        "height": 6
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3081",
      "tag": "svg",
      "rect": {
        "x": 415,
        "y": 4182,
        "width": 6,
        "height": 6
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3085",
      "tag": "svg",
      "rect": {
        "x": 566,
        "y": 4182,
        "width": 6,
        "height": 6
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3089",
      "tag": "svg",
      "rect": {
        "x": 717,
        "y": 4182,
        "width": 6,
        "height": 6
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3093",
      "tag": "svg",
      "rect": {
        "x": 868,
        "y": 4182,
        "width": 6,
        "height": 6
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3097",
      "tag": "svg",
      "rect": {
        "x": 1019,
        "y": 4182,
        "width": 6,
        "height": 6
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    },
    {
      "id": "ld-3101",
      "tag": "svg",
      "rect": {
        "x": 1170,
        "y": 4182,
        "width": 6,
        "height": 6
      },
      "role": null,
      "label": "svg",
      "media": null,
      "radius": "0px",
      "overflow": "hidden",
      "objectFit": "fill",
      "aspectRatio": 1,
      "objectPosition": "50% 50%"
    }
  ],
  "bounds": {
    "top": 3700,
    "bottom": 4992,
    "pageHeight": 6763
  },
  "schema": "little-details-section-measurements-v1",
  "source": "saved DOM/CSS element and animation maps",
  "columns": [],
  "spacing": {
    "gapsPx": [
      10
    ],
    "representativeContentWidthsPx": [
      1238,
      700,
      302
    ]
  },
  "coverage": {
    "cards": 0,
    "media": 11,
    "animations": 0,
    "elementsInSection": 23
  },
  "surfaces": {
    "radii": [
      "4px"
    ],
    "borders": [
      "1px solid rgba(255, 255, 255, 0.15)"
    ],
    "shadows": []
  },
  "animations": [],
  "capturedAt": "2026-10-29T16:48:55.968Z",
  "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."
  ],
  "viewportWidth": 1440
}
```

### 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: low
- What transfers: Centered heading + CTA + horizontal timeline + video stacking pattern; Dotted timeline with gradient progress fill as a step indicator; Light border and rounded-corner button styling
- Dependencies: Specific video asset and poster image; Exact timeline step count and label text tied to layout spacing; Brand color gradient used in timeline fill
- Guidance: Swap video source, timeline labels, and heading copy; timeline dot spacing and gradient fill percentage will need manual recalibration per step count.

### 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 steps section inspired by the design evidence titled “Timeline over video player”.

Purpose: A section detailing a migration process with a centered heading, a horizontal timeline graphic, and a large video player below.

Structure: centered single-column. Source layout label: Centered content stacking a heading, a button, a horizontal timeline graphic, and a full-width video block.. Use a narrow central reading axis and deliberate scale contrast rather than adding unnecessary side content.

Visual signature to preserve at the pattern level: Clean white section featuring a dotted horizontal timeline above a large office video thumbnail.

Components: section-heading, button-solid, horizontal-timeline, video-player.

Style direction: minimal, corporate, photographic.

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

Typography evidence: {"role":"display","size":"56px","family":"Twklausanne","source":"computed","traits":"Regular","weight":"400","evidence":"font-4: computed CSS at 1440×1000; AI role: Large 56px Twklausanne used for the main hero headline 'The AI ERP to end month-end'.","sampleId":"font-4","confidence":0.95,"lineHeight":"61.6px","letterSpacing":"normal"} {"role":"heading","size":"48px","family":"Twklausanne","source":"computed","traits":"Regular","weight":"400","evidence":"font-2: computed CSS at 1440×1000; AI role: 48px Twklausanne used for primary section headings like 'The accounting suite that runs while you lead.'","sampleId":"font-2","confidence":0.9,"lineHeight":"52.8px","letterSpacing":"normal"} {"role":"body","size":"16px","family":"Twklausanne","source":"computed","traits":"Regular","weight":"300","evidence":"font-7: computed CSS at 1440×1000; AI role: 16px Twklausanne used widely for body copy, subheadings, and buttons.","sampleId":"font-7","confidence":0.85,"lineHeight":"24px","letterSpacing":"normal"}

Color evidence: {"hex":"#1D1F20","name":"text","role":"text","source":"computed","evidence":"color-2: computed rgb(29, 31, 32); AI role: Dark grey (#1D1F20) used heavily for headings and primary text on light backgrounds.","sampleId":"color-2","confidence":0.95} {"hex":"#FFFFFF","name":"canvas","role":"canvas","source":"computed","evidence":"color-3: computed rgb(255, 255, 255); AI role: White background dominates the feature and migration sections.","sampleId":"color-3","confidence":0.9} {"hex":"#E4EBEC","name":"border","role":"border","source":"computed","evidence":"color-9: computed rgb(228, 235, 236); AI role: Light grey/blue (#E4EBEC) is used extensively for borders on feature cards and input fields.","sampleId":"color-9","confidence":0.9} {"hex":"#1C1D1E","name":"surface","role":"surface","source":"computed","evidence":"color-18: computed rgb(28, 29, 30); AI role: Dark surface (#1C1D1E) used for the testimonial carousel and footer areas.","sampleId":"color-18","confidence":0.85}

Typography measured inside this section: {"id":"font-11","size":"14px","count":3,"family":"Twklausanne","traits":"Regular","weight":"400","contexts":[{"tag":"p","top":64,"text":"Login","property":"font"},{"tag":"p","top":64,"text":"Schedule demo","property":"font"},{"tag":"p","top":3988,"text":"Schedule demo","property":"font"}],"fontStack":"Twklausanne, sans-serif","lineHeight":"21px","letterSpacing":"normal"} {"id":"font-19","size":"16px","count":1,"family":"Twklausanne","traits":"Regular","weight":"500","contexts":[{"tag":"strong","top":4127,"text":"4-6 weeks","property":"font"}],"fontStack":"Twklausanne, sans-serif","lineHeight":"24px","letterSpacing":"normal"}

Colors measured inside this section: {"id":"color-4","hex":"#000000","alpha":0.10196078431372549,"count":1,"contexts":[{"tag":"div","top":4258,"text":"","property":"background"}],"cssValue":"rgba(0, 0, 0, 0.1)"} {"id":"color-24","hex":"#BDCDD0","alpha":1,"count":7,"contexts":[{"tag":"div","top":4155,"text":"","property":"background"}],"cssValue":"rgb(189, 205, 208)"}

Exact section measurements from the saved element map: root {"rect":{"x":0,"y":3700,"width":1440,"height":1292},"padding":{"top":"0px","left":"0px","right":"0px","bottom":"0px"},"gap":"normal","columns":null,"overflow":"hidden"}; spacing {"gapsPx":[10],"representativeContentWidthsPx":[1238,700,302]}; surfaces {"radii":["4px"],"borders":["1px solid rgba(255, 255, 255, 0.15)"],"shadows":[]}; media [{"tag":"video","rect":{"x":101,"y":4258,"width":1238,"height":696},"aspectRatio":1.8,"objectFit":"contain","objectPosition":"50% 50%","radius":"0px"},{"tag":"svg","rect":{"x":569,"y":3780,"width":302,"height":32},"aspectRatio":9.4,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"svg","rect":{"x":278,"y":4865,"width":20,"height":20},"aspectRatio":1,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"svg","rect":{"x":472,"y":4867,"width":16,"height":16},"aspectRatio":1,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"}]

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

Transfer these principles: Centered heading + CTA + horizontal timeline + video stacking pattern; Dotted timeline with gradient progress fill as a step indicator; Light border and rounded-corner button styling.

Dependencies: Specific video asset and poster image; Exact timeline step count and label text tied to layout spacing; Brand color gradient used in timeline fill.

Adaptation guidance: Swap video source, timeline labels, and heading copy; timeline dot spacing and gradient fill percentage will need manual recalibration per step count.

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