# Dark footer with newsletter signup — Section Design Reference

Schema: Design Details SECTION.md v3.2
Source: https://ouraring.com/store/rings/oura-ring-5
Website: Oura Ring 5
Section ID: c2ca5e88-4923-47dc-bba5-72862d8b368b
Design Details page: https://designdetails.io/sections/ouraring-com--home--footer-c2ca5e88
Status: deterministic evidence captured; editorial AI review pending

## Purpose

This is a footer 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×700px root; block

## Visual signature

editorial, minimal, soft, immersive-product-focus, premium-tech treatment at 1440×700px. The crop spans 12350–13050px of a 13050px page.

## Components

- Navigation Bar
- Hero With Background Imagery
- Primary Button
- Stat Block
- Video Frame
- Tabs
- Feature Card
- Carousel
- Newsletter Form
- Footer
- Scroll Driven 3D Product Explorer
- App UI Showcase Cards
- Technical Specification Grid

## 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: footer
- Source type: footer
- Structure: 1440×700px root; block
- Layout: 1440×700px root; block
- Styles: editorial, minimal, soft, immersive-product-focus, premium-tech
- Components: Navigation Bar, Hero With Background Imagery, Primary Button, Stat Block, Video Frame, Tabs, Feature Card, Carousel, Newsletter Form, Footer, Scroll Driven 3D Product Explorer, App UI Showcase Cards, Technical Specification Grid
- Purpose: footer section from the Home page of Oura Ring 5.
- Visual signature: rgba(0, 0, 0, 0) with 1440×700px root; block. Inspect the crop for image and content hierarchy.
- Place on the page: 13 of 13, after Other (`36d6593c-b2b5-4842-9345-3fe6260d853a`)

### Crop and composition

- Crop: 1440×700px; aspect ratio 2.057:1
- Page bounds: 12350–13050px of 13050px
- 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": "Editorial New",
      "stack": "\"Editorial New\", serif",
      "size": "40px",
      "weight": "300",
      "lineHeight": "50px",
      "letterSpacing": "-1px",
      "sample": "Receive articles, tips, and offers from Oura",
      "element": "h2",
      "occurrences": 1,
      "sourceId": "font-9"
    },
    {
      "role": "UI/supporting text",
      "family": "AkkuratLL",
      "stack": "AkkuratLL, sans-serif",
      "size": "16px",
      "weight": "400",
      "lineHeight": "24px",
      "letterSpacing": "normal",
      "sample": "Blog",
      "element": "em",
      "occurrences": 1,
      "sourceId": "font-23"
    },
    {
      "role": "UI/supporting text",
      "family": "AkkuratLL",
      "stack": "AkkuratLL, sans-serif",
      "size": "12px",
      "weight": "400",
      "lineHeight": "16px",
      "letterSpacing": "normal",
      "sample": "Terms & Conditions",
      "element": "a",
      "occurrences": 5,
      "sourceId": "font-25"
    }
  ],
  "siteRoles": [
    {
      "role": "display",
      "size": "128px",
      "family": "Editorial New",
      "source": "curator",
      "traits": "Regular",
      "weight": "400",
      "evidence": "Curator assigned font role",
      "confidence": 1,
      "lineHeight": "192px",
      "letterSpacing": "-6.4px"
    },
    {
      "role": "heading",
      "size": "98px",
      "family": "Editorial New",
      "source": "curator",
      "traits": "Regular",
      "weight": "400",
      "evidence": "Curator assigned font role",
      "confidence": 1,
      "lineHeight": "107.8px",
      "letterSpacing": "normal"
    },
    {
      "role": "body",
      "size": "16px",
      "family": "AkkuratLL",
      "source": "curator",
      "traits": "Regular",
      "weight": "400",
      "evidence": "Curator assigned font role",
      "confidence": 1,
      "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": "rgb(0, 0, 0)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "svg-fill"
      ],
      "occurrences": 18,
      "sourceId": "color-4"
    },
    {
      "value": "#A8A5A0",
      "cssValue": "rgb(168, 165, 160)",
      "alpha": 1,
      "appliedAs": [
        "text"
      ],
      "occurrences": 14,
      "sourceId": "color-7"
    },
    {
      "value": "#F7F1E8",
      "cssValue": "rgb(247, 241, 232)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "svg-fill"
      ],
      "occurrences": 36,
      "sourceId": "color-11"
    },
    {
      "value": "#838280",
      "cssValue": "rgb(131, 130, 128)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 1,
      "sourceId": "color-16"
    },
    {
      "value": "#E7A7C6",
      "cssValue": "rgb(231, 167, 198)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 1,
      "sourceId": "color-19"
    },
    {
      "value": "#0B051D",
      "cssValue": "rgb(11, 5, 29)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 2,
      "sourceId": "color-20"
    },
    {
      "value": "#1F72CD",
      "cssValue": "rgb(31, 114, 205)",
      "alpha": 1,
      "appliedAs": [
        "background"
      ],
      "occurrences": 1,
      "sourceId": "color-22"
    },
    {
      "value": "#172B85",
      "cssValue": "rgb(23, 43, 133)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 1,
      "sourceId": "color-25"
    },
    {
      "value": "#253B80",
      "cssValue": "rgb(37, 59, 128)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 3,
      "sourceId": "color-26"
    },
    {
      "value": "#F79E1B",
      "cssValue": "rgb(247, 158, 27)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 2,
      "sourceId": "color-27"
    },
    {
      "value": "#EB001B",
      "cssValue": "rgb(235, 0, 27)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 1,
      "sourceId": "color-28"
    },
    {
      "value": "#5F6368",
      "cssValue": "rgb(95, 99, 104)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 3,
      "sourceId": "color-29"
    },
    {
      "value": "#34383B",
      "cssValue": "rgb(52, 56, 59)",
      "alpha": 1,
      "appliedAs": [
        "border"
      ],
      "occurrences": 4,
      "sourceId": "color-31"
    },
    {
      "value": "#179BD7",
      "cssValue": "rgb(23, 155, 215)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 2,
      "sourceId": "color-32"
    },
    {
      "value": "#FF5F00",
      "cssValue": "rgb(255, 95, 0)",
      "alpha": 1,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 1,
      "sourceId": "color-34"
    },
    {
      "value": "#FFFFFF",
      "cssValue": "oklab(0.999994 0.0000455677 0.0000200868 / 0.6)",
      "alpha": 0.6,
      "appliedAs": [
        "svg-fill"
      ],
      "occurrences": 1,
      "sourceId": "color-35"
    }
  ],
  "functionalPalette": [
    {
      "hex": "#19191C",
      "name": "text",
      "role": "text",
      "source": "curator",
      "evidence": "Curator assigned functional color role",
      "confidence": 1
    },
    {
      "hex": "#F3F1F0",
      "name": "canvas",
      "role": "canvas",
      "source": "curator",
      "evidence": "Curator assigned functional color role",
      "confidence": 1
    },
    {
      "hex": "#FFFFFF",
      "name": "text",
      "role": "text",
      "source": "curator",
      "evidence": "Curator assigned functional color role",
      "confidence": 1
    },
    {
      "hex": "#2A72DE",
      "name": "primary action",
      "role": "primary-action",
      "source": "curator",
      "evidence": "Curator assigned functional color role",
      "confidence": 1
    },
    {
      "hex": "#4A4741",
      "name": "muted text",
      "role": "muted-text",
      "source": "curator",
      "evidence": "Curator assigned functional color role",
      "confidence": 1
    },
    {
      "hex": "#F7F1E8",
      "name": "surface",
      "role": "surface",
      "source": "curator",
      "evidence": "Curator assigned functional color role",
      "confidence": 1
    }
  ]
}
```

### Design tokens

```json
{
  "radius": "Large border radii on images and video containers (e.g., the 'Rebuilt for greater accuracy' grid). Pill-shaped (fully rounded) buttons.",
  "density": "Low density. The design prioritizes large imagery, massive typography, and whitespace over packing information tightly.",
  "evidence": "Observed from the DOM/CSS facts: pill-shaped buttons, large font sizes (up to 192px for stats, 128px for display), and visual inspection of the crops showing rounded media containers and airy layouts.",
  "borderStyle": "Minimal use of borders; mostly relies on background color contrast or subtle light borders (e.g., #CCCAC7 on inactive tab buttons).",
  "buttonStyle": "Pill-shaped buttons. Primary buttons are solid (white or blue), while secondary/tab buttons have thin borders and transparent or light backgrounds.",
  "cornerStyle": "Consistently rounded corners on media containers, feature cards, and buttons.",
  "contentWidth": "Content is generally constrained to a readable max-width, but 3D elements and some media break out to full viewport width.",
  "spacingRhythm": "Generous vertical spacing between sections, allowing the large typography and 3D models to breathe. Content is often centered with wide margins."
}
```

### Reconstruction specification

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

- Root: 1440×700px; block; padding {"top":"48px","right":"0px","bottom":"0px","left":"0px"}; gap normal; background rgba(0, 0, 0, 0); radius 0px.
- Observed gaps: 8, 16px.
- Representative content widths: 1197, 384, 320, 252px.
- Layout containers: 1; cards/surfaces: 0; media elements: 12; browser animations: 0.

#### Container, grid, and spacing

```json
{
  "viewport": {
    "width": 1440,
    "captureBounds": {
      "top": 12350,
      "bottom": 13050,
      "pageHeight": 13050
    }
  },
  "container": {
    "size": "1440×700px",
    "position": "x 0px, y 12350px",
    "display": "block",
    "positionMode": "relative",
    "padding": {
      "top": "48px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "margin": {
      "top": "-48px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "gap": "normal",
    "columns": "not captured",
    "background": "rgba(0, 0, 0, 0)",
    "radius": "0px",
    "border": "0px solid rgb(236, 236, 236)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "observedGapsPx": [
      8,
      16
    ],
    "representativeContentWidthsPx": [
      1197,
      384,
      320,
      252
    ]
  },
  "columns": [
    {
      "element": "ul · Terms & ConditionsPrivacy PolicyAccessibilityIP NoticeSecurity Center",
      "size": "1197×18px",
      "position": "x 64px, y 12934px",
      "display": "flex",
      "template": "not captured",
      "direction": "row",
      "gap": "16px"
    }
  ]
}
```

#### Cards and surfaces

```json
{
  "cards": [],
  "surfaces": {
    "radii": [
      "12px",
      "8px",
      "3.35544e+07px"
    ],
    "borders": [
      "1px solid rgb(255, 255, 255)"
    ],
    "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, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(255, 255, 255, 0.06) 0px 1px 0px 0px inset"
    ]
  }
}
```

#### Media treatment

```json
[
  {
    "element": "svg · svg",
    "size": "1440×700px",
    "position": "x 0px, y 12350px",
    "aspectRatio": 2.1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "150×47px",
    "position": "x 64px, y 12462px",
    "aspectRatio": 3.2,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · American Express",
    "size": "48×48px",
    "position": "x 1324px, y 12461px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · Visa",
    "size": "40×40px",
    "position": "x 1204px, y 12465px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · Klarna",
    "size": "56×24px",
    "position": "x 929px, y 12473px",
    "aspectRatio": 2.3,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · PayPal",
    "size": "29×32px",
    "position": "x 1009px, y 12469px",
    "aspectRatio": 0.9,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · Mastercard",
    "size": "36×24px",
    "position": "x 1268px, y 12473px",
    "aspectRatio": 1.5,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · Google Pay",
    "size": "42×20px",
    "position": "x 1136px, y 12475px",
    "aspectRatio": 2.1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · Apple Pay",
    "size": "44×18px",
    "position": "x 1064px, y 12476px",
    "aspectRatio": 2.4,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "19×20px",
    "position": "x 1278px, y 12950px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "18×18px",
    "position": "x 866px, y 12608px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "hidden",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "18×18px",
    "position": "x 866px, y 12672px",
    "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
{
  "schema": "little-details-section-measurements-v1",
  "source": "saved DOM/CSS element and animation maps",
  "capturedAt": "2026-11-06T17:43:55.013Z",
  "viewportWidth": 1440,
  "bounds": {
    "top": 12350,
    "bottom": 13050,
    "pageHeight": 13050
  },
  "root": {
    "id": "ld-776",
    "tag": "footer",
    "role": null,
    "label": "Payment OptionsAvailableKlarnaKlarnaInstant CheckoutPayPalPayPalApple PayApple PayGoogle PayGoogle P",
    "rect": {
      "x": 0,
      "y": 12350,
      "width": 1440,
      "height": 700
    },
    "display": "block",
    "position": "relative",
    "padding": {
      "top": "48px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "margin": {
      "top": "-48px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "gap": "normal",
    "columns": null,
    "background": "rgba(0, 0, 0, 0)",
    "radius": "0px",
    "border": "0px solid rgb(236, 236, 236)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "gapsPx": [
      8,
      16
    ],
    "representativeContentWidthsPx": [
      1197,
      384,
      320,
      252
    ]
  },
  "columns": [
    {
      "id": "ld-1026",
      "tag": "ul",
      "role": null,
      "label": "Terms & ConditionsPrivacy PolicyAccessibilityIP NoticeSecurity Center",
      "rect": {
        "x": 64,
        "y": 12934,
        "width": 1197,
        "height": 18
      },
      "display": "flex",
      "columns": null,
      "direction": "row",
      "gap": "16px"
    }
  ],
  "cards": [],
  "surfaces": {
    "radii": [
      "12px",
      "8px",
      "3.35544e+07px"
    ],
    "borders": [
      "1px solid rgb(255, 255, 255)"
    ],
    "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, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(255, 255, 255, 0.06) 0px 1px 0px 0px inset"
    ]
  },
  "media": [
    {
      "id": "ld-777",
      "tag": "svg",
      "role": null,
      "label": "svg",
      "rect": {
        "x": 0,
        "y": 12350,
        "width": 1440,
        "height": 700
      },
      "aspectRatio": 2.1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-790",
      "tag": "svg",
      "role": null,
      "label": "svg",
      "rect": {
        "x": 64,
        "y": 12462,
        "width": 150,
        "height": 47
      },
      "aspectRatio": 3.2,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-918",
      "tag": "svg",
      "role": null,
      "label": "American Express",
      "rect": {
        "x": 1324,
        "y": 12461,
        "width": 48,
        "height": 48
      },
      "aspectRatio": 1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-905",
      "tag": "svg",
      "role": null,
      "label": "Visa",
      "rect": {
        "x": 1204,
        "y": 12465,
        "width": 40,
        "height": 40
      },
      "aspectRatio": 1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-874",
      "tag": "svg",
      "role": null,
      "label": "Klarna",
      "rect": {
        "x": 929,
        "y": 12473,
        "width": 56,
        "height": 24
      },
      "aspectRatio": 2.3,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-879",
      "tag": "svg",
      "role": null,
      "label": "PayPal",
      "rect": {
        "x": 1009,
        "y": 12469,
        "width": 29,
        "height": 32
      },
      "aspectRatio": 0.9,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-910",
      "tag": "svg",
      "role": null,
      "label": "Mastercard",
      "rect": {
        "x": 1268,
        "y": 12473,
        "width": 36,
        "height": 24
      },
      "aspectRatio": 1.5,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-894",
      "tag": "svg",
      "role": null,
      "label": "Google Pay",
      "rect": {
        "x": 1136,
        "y": 12475,
        "width": 42,
        "height": 20
      },
      "aspectRatio": 2.1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-889",
      "tag": "svg",
      "role": null,
      "label": "Apple Pay",
      "rect": {
        "x": 1064,
        "y": 12476,
        "width": 44,
        "height": 18
      },
      "aspectRatio": 2.4,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-1041",
      "tag": "svg",
      "role": null,
      "label": "svg",
      "rect": {
        "x": 1278,
        "y": 12950,
        "width": 19,
        "height": 20
      },
      "aspectRatio": 1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-968",
      "tag": "svg",
      "role": null,
      "label": "svg",
      "rect": {
        "x": 866,
        "y": 12608,
        "width": 18,
        "height": 18
      },
      "aspectRatio": 1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    },
    {
      "id": "ld-975",
      "tag": "svg",
      "role": null,
      "label": "svg",
      "rect": {
        "x": 866,
        "y": 12672,
        "width": 18,
        "height": 18
      },
      "aspectRatio": 1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    }
  ],
  "animations": [],
  "coverage": {
    "elementsInSection": 106,
    "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 footer section inspired by the design evidence titled “Dark footer with newsletter signup”.

Purpose: footer section from the Home page of Oura Ring 5.

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

Components: Navigation Bar, Hero With Background Imagery, Primary Button, Stat Block, Video Frame, Tabs, Feature Card, Carousel, Newsletter Form, Footer, Scroll Driven 3D Product Explorer, App UI Showcase Cards, Technical Specification Grid.

Style direction: editorial, minimal, soft, immersive-product-focus, premium-tech.

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

Typography evidence: {"role":"display","size":"128px","family":"Editorial New","source":"curator","traits":"Regular","weight":"400","evidence":"Curator assigned font role","confidence":1,"lineHeight":"192px","letterSpacing":"-6.4px"} {"role":"heading","size":"98px","family":"Editorial New","source":"curator","traits":"Regular","weight":"400","evidence":"Curator assigned font role","confidence":1,"lineHeight":"107.8px","letterSpacing":"normal"} {"role":"body","size":"16px","family":"AkkuratLL","source":"curator","traits":"Regular","weight":"400","evidence":"Curator assigned font role","confidence":1,"lineHeight":"24px","letterSpacing":"normal"}

Color evidence: {"hex":"#19191C","name":"text","role":"text","source":"curator","evidence":"Curator assigned functional color role","confidence":1} {"hex":"#F3F1F0","name":"canvas","role":"canvas","source":"curator","evidence":"Curator assigned functional color role","confidence":1} {"hex":"#FFFFFF","name":"text","role":"text","source":"curator","evidence":"Curator assigned functional color role","confidence":1} {"hex":"#2A72DE","name":"primary action","role":"primary-action","source":"curator","evidence":"Curator assigned functional color role","confidence":1} {"hex":"#4A4741","name":"muted text","role":"muted-text","source":"curator","evidence":"Curator assigned functional color role","confidence":1} {"hex":"#F7F1E8","name":"surface","role":"surface","source":"curator","evidence":"Curator assigned functional color role","confidence":1}

Typography measured inside this section: {"id":"font-9","family":"Editorial New","fontStack":"\"Editorial New\", serif","weight":"300","size":"40px","lineHeight":"50px","letterSpacing":"-1px","traits":"Regular","count":1,"contexts":[{"tag":"h2","text":"Receive articles, tips, and offers from Oura","top":12573,"property":"font"}]} {"id":"font-23","family":"AkkuratLL","fontStack":"AkkuratLL, sans-serif","weight":"400","size":"16px","lineHeight":"24px","letterSpacing":"normal","traits":"italic","count":1,"contexts":[{"tag":"em","text":"Blog","top":12607,"property":"font"}]} {"id":"font-25","family":"AkkuratLL","fontStack":"AkkuratLL, sans-serif","weight":"400","size":"12px","lineHeight":"16px","letterSpacing":"normal","traits":"Regular","count":5,"contexts":[{"tag":"a","text":"Terms & Conditions","top":12934,"property":"font"},{"tag":"a","text":"Privacy Policy","top":12934,"property":"font"},{"tag":"a","text":"Accessibility","top":12934,"property":"font"}]}

Colors measured inside this section: {"id":"color-4","hex":"#000000","alpha":1,"cssValue":"rgb(0, 0, 0)","count":18,"contexts":[{"tag":"a","text":"Skip Navigation to Main Content","top":1,"property":"text"},{"tag":"svg","text":"","top":36,"property":"svg-fill"},{"tag":"span","text":"Klarna","top":12485,"property":"text"}]} {"id":"color-7","hex":"#A8A5A0","alpha":1,"cssValue":"rgb(168, 165, 160)","count":14,"contexts":[{"tag":"h2","text":"Receive articles, tips, and offers from Oura","top":12573,"property":"text"},{"tag":"p","text":"We care about protecting your data.","top":12801,"property":"text"},{"tag":"div","text":"Read more in our Privacy Policy.","top":12819,"property":"text"}]} {"id":"color-11","hex":"#F7F1E8","alpha":1,"cssValue":"rgb(247, 241, 232)","count":36,"contexts":[{"tag":"button","text":"Sleep","top":9481,"property":"text"},{"tag":"path","text":"","top":9499,"property":"svg-fill"},{"tag":"a","text":"About Us","top":12607,"property":"text"}]} {"id":"color-16","hex":"#838280","alpha":1,"cssValue":"rgb(131, 130, 128)","count":1,"contexts":[{"tag":"path","text":"","top":12462,"property":"svg-fill"}]} {"id":"color-19","hex":"#E7A7C6","alpha":1,"cssValue":"rgb(231, 167, 198)","count":1,"contexts":[{"tag":"div","text":"KlarnaKlarna","top":12468,"property":"background"}]} {"id":"color-20","hex":"#0B051D","alpha":1,"cssValue":"rgb(11, 5, 29)","count":2,"contexts":[{"tag":"svg","text":"Klarna","top":12473,"property":"svg-fill"},{"tag":"path","text":"","top":12478,"property":"svg-fill"}]} {"id":"color-22","hex":"#1F72CD","alpha":1,"cssValue":"rgb(31, 114, 205)","count":1,"contexts":[{"tag":"div","text":"American ExpressAmerican Express","top":12468,"property":"background"}]} {"id":"color-25","hex":"#172B85","alpha":1,"cssValue":"rgb(23, 43, 133)","count":1,"contexts":[{"tag":"path","text":"","top":12479,"property":"svg-fill"}]}

Exact section measurements from the saved element map: root {"rect":{"x":0,"y":12350,"width":1440,"height":700},"padding":{"top":"48px","right":"0px","bottom":"0px","left":"0px"},"gap":"normal","columns":null,"overflow":"visible"}; spacing {"gapsPx":[8,16],"representativeContentWidthsPx":[1197,384,320,252]}; surfaces {"radii":["12px","8px","3.35544e+07px"],"borders":["1px solid rgb(255, 255, 255)"],"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, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(255, 255, 255, 0.06) 0px 1px 0px 0px inset"]}; media [{"tag":"svg","rect":{"x":0,"y":12350,"width":1440,"height":700},"aspectRatio":2.1,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"svg","rect":{"x":64,"y":12462,"width":150,"height":47},"aspectRatio":3.2,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"svg","rect":{"x":1324,"y":12461,"width":48,"height":48},"aspectRatio":1,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"svg","rect":{"x":1204,"y":12465,"width":40,"height":40},"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 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.
