# Unraven case study overview — Section Design Reference

Schema: Design Details SECTION.md v3.2
Source: https://postgeneric.com/
Website: PostGeneric
Section ID: a40800cd-8ceb-4674-8c16-35103347e33f
Status: deterministic evidence captured; editorial AI review pending

## Purpose

This is a editorial section on the Web App UnravenSecret management for small teams,  page. Use the attached crop and measured browser facts to reconstruct its composition. Do not infer unmeasured source values.

## Layout

captured layout

## Visual signature

editorial, bold, minimal, gradient, soft-modern treatment at 1440×960px. The crop spans 30–990px of a 5582px page.

## Components

- Navigation Bar
- Hero
- Logo Strip
- Editorial Card
- Pricing Table
- Testimonial Card
- Primary Button
- Footer
- Staggered Portfolio Gallery

## 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: editorial
- Source type: editorial
- Structure: captured layout
- Layout: captured layout
- Styles: editorial, bold, minimal, gradient, soft-modern
- Components: Navigation Bar, Hero, Logo Strip, Editorial Card, Pricing Table, Testimonial Card, Primary Button, Footer, Staggered Portfolio Gallery
- Purpose: editorial section from the Web App UnravenSecret management for small teams,  page of PostGeneric.
- Visual signature: Captured visual surface with captured layout. Inspect the crop for image and content hierarchy.

### Crop and composition

- Crop: 1440×960px; aspect ratio 1.5:1
- Page bounds: 30–990px of 5582px
- 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": "body/supporting copy",
      "family": "neueMontreal",
      "stack": "neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif",
      "size": "16px",
      "weight": "500",
      "lineHeight": "24.3px",
      "letterSpacing": "normal",
      "sample": "PostGeneric designs distinctive, brand-driven digital products for startups that refuse to look or p",
      "element": "p",
      "occurrences": 1,
      "sourceId": "font-16"
    },
    {
      "role": "UI/supporting text",
      "family": "neueMontreal",
      "stack": "neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif",
      "size": "16px",
      "weight": "500",
      "lineHeight": "normal",
      "letterSpacing": "-0.5px",
      "sample": "Book a call",
      "element": "span",
      "occurrences": 8,
      "sourceId": "font-23"
    },
    {
      "role": "UI/supporting text",
      "family": "neueMontreal",
      "stack": "neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif",
      "size": "15px",
      "weight": "500",
      "lineHeight": "22.5px",
      "letterSpacing": "normal",
      "sample": "Work",
      "element": "a",
      "occurrences": 5,
      "sourceId": "font-24"
    },
    {
      "role": "section heading",
      "family": "neueMontreal",
      "stack": "neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif",
      "size": "79.1px",
      "weight": "700",
      "lineHeight": "84.6px",
      "letterSpacing": "-3.3px",
      "sample": "We are the cure",
      "element": "span",
      "occurrences": 1,
      "sourceId": "font-35"
    },
    {
      "role": "section heading",
      "family": "Instrument Serif",
      "stack": "\"Instrument Serif\", \"Instrument Serif Fallback\", Georgia, serif",
      "size": "79.1px",
      "weight": "400",
      "lineHeight": "82.3px",
      "letterSpacing": "-1.5px",
      "sample": "for the AI slop era.",
      "element": "span",
      "occurrences": 1,
      "sourceId": "font-36"
    },
    {
      "role": "UI/supporting text",
      "family": "neueMontreal",
      "stack": "neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif",
      "size": "16px",
      "weight": "500",
      "lineHeight": "24px",
      "letterSpacing": "-0.5px",
      "sample": "View work",
      "element": "span",
      "occurrences": 1,
      "sourceId": "font-37"
    },
    {
      "role": "UI/supporting text",
      "family": "neueMontreal",
      "stack": "neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif",
      "size": "14px",
      "weight": "500",
      "lineHeight": "21px",
      "letterSpacing": "-0.4px",
      "sample": "Contact us",
      "element": "span",
      "occurrences": 1,
      "sourceId": "font-38"
    }
  ],
  "siteRoles": [
    {
      "role": "display",
      "size": "326.9px",
      "family": "neueMontreal",
      "source": "computed",
      "traits": "Regular",
      "weight": "900",
      "evidence": "font-30: computed CSS at 1440×1000; AI role: neueMontreal at a massive 326.9px used for the background brand text in the footer.",
      "sampleId": "font-30",
      "confidence": 0.95,
      "lineHeight": "255px",
      "letterSpacing": "-14.3px"
    },
    {
      "role": "heading",
      "size": "80.5px",
      "family": "Instrument Serif",
      "source": "computed",
      "traits": "Regular",
      "weight": "400",
      "evidence": "font-6: computed CSS at 1440×1000; AI role: Instrument Serif at 80.5px used for prominent section headers like 'Proof that taste still matters'.",
      "sampleId": "font-6",
      "confidence": 0.9,
      "lineHeight": "80.5px",
      "letterSpacing": "-1px"
    },
    {
      "role": "body",
      "size": "16px",
      "family": "neueMontreal",
      "source": "computed",
      "traits": "Regular",
      "weight": "500",
      "evidence": "font-9: computed CSS at 1440×1000; AI role: neueMontreal at 16px used for standard paragraph text describing portfolio projects.",
      "sampleId": "font-9",
      "confidence": 0.9,
      "lineHeight": "24.8px",
      "letterSpacing": "-0.4px"
    },
    {
      "role": "mono",
      "size": "15px",
      "family": "neueMontreal",
      "source": "computed",
      "traits": "Regular",
      "weight": "500",
      "evidence": "font-24: computed CSS at 1440×1000; AI role: neueMontreal at 15px used for navigation links; while not strictly monospaced, it serves as the functional UI font.",
      "sampleId": "font-24",
      "confidence": 0.7,
      "lineHeight": "22.5px",
      "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": "#1F0B53",
      "cssValue": "rgb(31, 11, 83)",
      "alpha": 1,
      "appliedAs": [
        "text",
        "background"
      ],
      "occurrences": 180,
      "sourceId": "color-1"
    },
    {
      "value": "#FFFFFF",
      "cssValue": "rgb(255, 255, 255)",
      "alpha": 1,
      "appliedAs": [
        "background",
        "control-background",
        "svg-fill"
      ],
      "occurrences": 77,
      "sourceId": "color-3"
    },
    {
      "value": "#141527",
      "cssValue": "rgb(20, 21, 39)",
      "alpha": 1,
      "appliedAs": [
        "::after-background"
      ],
      "occurrences": 9,
      "sourceId": "color-8"
    },
    {
      "value": "#FFFFFF",
      "cssValue": "rgba(255, 255, 255, 0.92)",
      "alpha": 0.9215686274509804,
      "appliedAs": [
        "text"
      ],
      "occurrences": 2,
      "sourceId": "color-9"
    }
  ],
  "functionalPalette": [
    {
      "hex": "#1F0B53",
      "name": "text",
      "role": "text",
      "source": "computed",
      "evidence": "color-1: computed rgb(31, 11, 83); AI role: Deep purple/blue (#1F0B53) is used as the primary text color, providing high contrast against light backgrounds.",
      "sampleId": "color-1",
      "confidence": 0.95
    },
    {
      "hex": "#FFFFFF",
      "name": "canvas",
      "role": "canvas",
      "source": "computed",
      "evidence": "color-3: computed rgb(255, 255, 255); AI role: White (#FFFFFF) is used as the primary background color for the main content areas.",
      "sampleId": "color-3",
      "confidence": 0.9
    },
    {
      "hex": "#F2F1F8",
      "name": "surface",
      "role": "surface",
      "source": "computed",
      "evidence": "color-2: computed rgb(242, 241, 248); AI role: Light lavender (#F2F1F8) is used for the background of testimonial cards and the secondary pricing card.",
      "sampleId": "color-2",
      "confidence": 0.85
    },
    {
      "hex": "#10032E",
      "name": "canvas",
      "role": "canvas",
      "source": "computed",
      "evidence": "color-6: computed rgb(16, 3, 46); AI role: Very dark blue (#10032E) is used as the background for the primary, emphasized pricing card.",
      "sampleId": "color-6",
      "confidence": 0.8
    }
  ]
}
```

### Design tokens

```json
{
  "radius": "Buttons feature fully rounded (pill-shaped) radii. Cards (pricing, testimonials) feature moderate border-radii, likely around 16px-24px.",
  "density": "Low density. The design prioritizes whitespace and large typographic/visual elements over packing information tightly.",
  "evidence": "Observation of padding around text blocks, the distinct pill shape of all clickable CTAs, the lack of visible borders on cards, and the expansive layout structure.",
  "borderStyle": "Borders are largely absent. Separation is achieved through background color shifts (e.g., white vs. light lavender) rather than explicit border lines.",
  "buttonStyle": "Buttons are consistently pill-shaped. Variations include solid white with dark text on colored backgrounds, and solid dark with white text on light backgrounds. Ghost/outline styles are also present.",
  "cornerStyle": "Smooth, rounded corners are a key motif, softening the UI.",
  "contentWidth": "Content is generally centered within a constrained max-width container, with some elements (like images or background typography) breaking out for dramatic effect.",
  "spacingRhythm": "Generous spacing with large vertical margins between distinct sections (e.g., between portfolio items and pricing). Padding within cards is ample to maintain a breathable layout."
}
```

### Reconstruction specification

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

- Root container was not deterministically isolated.
- Observed gaps: 4, 6px.
- Representative content widths: 700, 388px.
- Layout containers: 2; cards/surfaces: 0; media elements: 3; browser animations: 0.

#### Container, grid, and spacing

```json
{
  "viewport": {
    "width": 1440,
    "captureBounds": {
      "top": 30,
      "bottom": 990,
      "pageHeight": 5582
    }
  },
  "container": null,
  "spacing": {
    "observedGapsPx": [
      4,
      6
    ],
    "representativeContentWidthsPx": [
      700,
      388
    ]
  },
  "columns": [
    {
      "element": "ul · BrandingProduct Design",
      "size": "182×55px",
      "position": "x 123px, y 652px",
      "display": "grid",
      "template": "181.812px",
      "direction": "row",
      "gap": "4px"
    },
    {
      "element": "ul · Security",
      "size": "182×26px",
      "position": "x 329px, y 652px",
      "display": "grid",
      "template": "181.828px",
      "direction": "row",
      "gap": "4px"
    }
  ]
}
```

#### Cards and surfaces

```json
{
  "cards": [],
  "surfaces": {
    "radii": [
      "38px",
      "22%"
    ],
    "borders": [],
    "shadows": []
  }
}
```

#### Media treatment

```json
[
  {
    "element": "canvas · canvas",
    "size": "700×473px",
    "position": "x 700px, y 30px",
    "aspectRatio": 1.5,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "source not captured"
  },
  {
    "element": "canvas · canvas",
    "size": "700×473px",
    "position": "x 700px, y 523px",
    "aspectRatio": 1.5,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "source not captured"
  },
  {
    "element": "img · cs-icon",
    "size": "50×50px",
    "position": "x 123px, y 98px",
    "aspectRatio": 1,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "22%",
    "overflow": "clip",
    "source": "https://postgeneric.com/work/unraven-icon.d5cca8a0.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-10-06T15:04:50.846Z",
  "viewportWidth": 1440,
  "bounds": {
    "top": 30,
    "bottom": 990,
    "pageHeight": 5582
  },
  "root": null,
  "spacing": {
    "gapsPx": [
      4,
      6
    ],
    "representativeContentWidthsPx": [
      700,
      388
    ]
  },
  "columns": [
    {
      "id": "ld-24",
      "tag": "ul",
      "role": null,
      "label": "BrandingProduct Design",
      "rect": {
        "x": 123,
        "y": 652,
        "width": 182,
        "height": 55
      },
      "display": "grid",
      "columns": "181.812px",
      "direction": "row",
      "gap": "4px"
    },
    {
      "id": "ld-30",
      "tag": "ul",
      "role": null,
      "label": "Security",
      "rect": {
        "x": 329,
        "y": 652,
        "width": 182,
        "height": 26
      },
      "display": "grid",
      "columns": "181.828px",
      "direction": "row",
      "gap": "4px"
    }
  ],
  "cards": [],
  "surfaces": {
    "radii": [
      "38px",
      "22%"
    ],
    "borders": [],
    "shadows": []
  },
  "media": [
    {
      "id": "ld-45",
      "tag": "canvas",
      "role": null,
      "label": "canvas",
      "rect": {
        "x": 700,
        "y": 30,
        "width": 700,
        "height": 473
      },
      "aspectRatio": 1.5,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": null
    },
    {
      "id": "ld-51",
      "tag": "canvas",
      "role": null,
      "label": "canvas",
      "rect": {
        "x": 700,
        "y": 523,
        "width": 700,
        "height": 473
      },
      "aspectRatio": 1.5,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": null
    },
    {
      "id": "ld-13",
      "tag": "img",
      "role": null,
      "label": "cs-icon",
      "rect": {
        "x": 123,
        "y": 98,
        "width": 50,
        "height": 50
      },
      "aspectRatio": 1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "22%",
      "overflow": "clip",
      "media": {
        "src": "https://postgeneric.com/work/unraven-icon.d5cca8a0.webp",
        "naturalWidth": 256,
        "naturalHeight": 256,
        "alt": ""
      }
    }
  ],
  "animations": [],
  "coverage": {
    "elementsInSection": 21,
    "cards": 0,
    "media": 3,
    "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 editorial section inspired by the design evidence titled “Unraven case study overview”.

Purpose: editorial section from the Web App UnravenSecret management for small teams,  page of PostGeneric.

Structure: captured layout. Source layout label: captured layout. Preserve the documented hierarchy and relationships; exact measurements were not deterministically captured.

Visual signature to preserve at the pattern level: Captured visual surface with captured layout. Inspect the crop for image and content hierarchy.

Components: Navigation Bar, Hero, Logo Strip, Editorial Card, Pricing Table, Testimonial Card, Primary Button, Footer, Staggered Portfolio Gallery.

Style direction: editorial, bold, minimal, gradient, soft-modern.

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

Typography evidence: {"role":"display","size":"326.9px","family":"neueMontreal","source":"computed","traits":"Regular","weight":"900","evidence":"font-30: computed CSS at 1440×1000; AI role: neueMontreal at a massive 326.9px used for the background brand text in the footer.","sampleId":"font-30","confidence":0.95,"lineHeight":"255px","letterSpacing":"-14.3px"} {"role":"heading","size":"80.5px","family":"Instrument Serif","source":"computed","traits":"Regular","weight":"400","evidence":"font-6: computed CSS at 1440×1000; AI role: Instrument Serif at 80.5px used for prominent section headers like 'Proof that taste still matters'.","sampleId":"font-6","confidence":0.9,"lineHeight":"80.5px","letterSpacing":"-1px"} {"role":"body","size":"16px","family":"neueMontreal","source":"computed","traits":"Regular","weight":"500","evidence":"font-9: computed CSS at 1440×1000; AI role: neueMontreal at 16px used for standard paragraph text describing portfolio projects.","sampleId":"font-9","confidence":0.9,"lineHeight":"24.8px","letterSpacing":"-0.4px"} {"role":"mono","size":"15px","family":"neueMontreal","source":"computed","traits":"Regular","weight":"500","evidence":"font-24: computed CSS at 1440×1000; AI role: neueMontreal at 15px used for navigation links; while not strictly monospaced, it serves as the functional UI font.","sampleId":"font-24","confidence":0.7,"lineHeight":"22.5px","letterSpacing":"normal"}

Color evidence: {"hex":"#1F0B53","name":"text","role":"text","source":"computed","evidence":"color-1: computed rgb(31, 11, 83); AI role: Deep purple/blue (#1F0B53) is used as the primary text color, providing high contrast against light backgrounds.","sampleId":"color-1","confidence":0.95} {"hex":"#FFFFFF","name":"canvas","role":"canvas","source":"computed","evidence":"color-3: computed rgb(255, 255, 255); AI role: White (#FFFFFF) is used as the primary background color for the main content areas.","sampleId":"color-3","confidence":0.9} {"hex":"#F2F1F8","name":"surface","role":"surface","source":"computed","evidence":"color-2: computed rgb(242, 241, 248); AI role: Light lavender (#F2F1F8) is used for the background of testimonial cards and the secondary pricing card.","sampleId":"color-2","confidence":0.85} {"hex":"#10032E","name":"canvas","role":"canvas","source":"computed","evidence":"color-6: computed rgb(16, 3, 46); AI role: Very dark blue (#10032E) is used as the background for the primary, emphasized pricing card.","sampleId":"color-6","confidence":0.8}

Typography measured inside this section: {"id":"font-16","family":"neueMontreal","fontStack":"neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif","weight":"500","size":"16px","lineHeight":"24.3px","letterSpacing":"normal","traits":"Regular","count":1,"contexts":[{"tag":"p","text":"PostGeneric designs distinctive, brand-driven digital products for startups that refuse to look or p","top":789,"property":"font"}]} {"id":"font-23","family":"neueMontreal","fontStack":"neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif","weight":"500","size":"16px","lineHeight":"normal","letterSpacing":"-0.5px","traits":"Regular","count":8,"contexts":[{"tag":"span","text":"Book a call","top":877,"property":"font"},{"tag":"span","text":"Book a call","top":10984,"property":"font"},{"tag":"span","text":"Book a call","top":11137,"property":"font"}]} {"id":"font-24","family":"neueMontreal","fontStack":"neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif","weight":"500","size":"15px","lineHeight":"22.5px","letterSpacing":"normal","traits":"Regular","count":5,"contexts":[{"tag":"a","text":"Work","top":30,"property":"font"},{"tag":"a","text":"Services","top":30,"property":"font"},{"tag":"a","text":"Pricing","top":30,"property":"font"}]} {"id":"font-35","family":"neueMontreal","fontStack":"neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif","weight":"700","size":"79.1px","lineHeight":"84.6px","letterSpacing":"-3.3px","traits":"Regular","count":1,"contexts":[{"tag":"span","text":"We are the cure","top":755,"property":"font"}]} {"id":"font-36","family":"Instrument Serif","fontStack":"\"Instrument Serif\", \"Instrument Serif Fallback\", Georgia, serif","weight":"400","size":"79.1px","lineHeight":"82.3px","letterSpacing":"-1.5px","traits":"Regular","count":1,"contexts":[{"tag":"span","text":"for the AI slop era.","top":831,"property":"font"}]} {"id":"font-37","family":"neueMontreal","fontStack":"neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif","weight":"500","size":"16px","lineHeight":"24px","letterSpacing":"-0.5px","traits":"Regular","count":1,"contexts":[{"tag":"span","text":"View work","top":875,"property":"font"}]} {"id":"font-38","family":"neueMontreal","fontStack":"neueMontreal, \"neueMontreal Fallback\", system-ui, sans-serif","weight":"500","size":"14px","lineHeight":"21px","letterSpacing":"-0.4px","traits":"Regular","count":1,"contexts":[{"tag":"span","text":"Contact us","top":42,"property":"font"}]}

Colors measured inside this section: {"id":"color-1","hex":"#1F0B53","alpha":1,"cssValue":"rgb(31, 11, 83)","count":180,"contexts":[{"tag":"a","text":"Skip to content","top":-84,"property":"text"},{"tag":"i","text":"","top":47,"property":"background"},{"tag":"span","text":"Contact us","top":42,"property":"text"}]} {"id":"color-3","hex":"#FFFFFF","alpha":1,"cssValue":"rgb(255, 255, 255)","count":77,"contexts":[{"tag":"body","text":"{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://postgeneric.com/#o","top":0,"property":"background"},{"tag":"a","text":"Skip to content","top":-84,"property":"control-background"},{"tag":"svg","text":"","top":42,"property":"svg-fill"}]} {"id":"color-8","hex":"#141527","alpha":1,"cssValue":"rgb(20, 21, 39)","count":9,"contexts":[{"tag":"a","text":"Contact us","top":29,"property":"::after-background"},{"tag":"button","text":"Book a call","top":859,"property":"::after-background"}]} {"id":"color-9","hex":"#FFFFFF","alpha":0.9215686274509804,"cssValue":"rgba(255, 255, 255, 0.92)","count":2,"contexts":[{"tag":"p","text":"PostGeneric designs distinctive, brand-driven digital products for startups that refuse to look or p","top":789,"property":"text"}]}

Exact section measurements from the saved element map: spacing {"gapsPx":[4,6],"representativeContentWidthsPx":[700,388]}; surfaces {"radii":["38px","22%"],"borders":[],"shadows":[]}; media [{"tag":"canvas","rect":{"x":700,"y":30,"width":700,"height":473},"aspectRatio":1.5,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"canvas","rect":{"x":700,"y":523,"width":700,"height":473},"aspectRatio":1.5,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"img","rect":{"x":123,"y":98,"width":50,"height":50},"aspectRatio":1,"objectFit":"fill","objectPosition":"50% 50%","radius":"22%"}]

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.
