# CTA and multi-column site footer — Section Design Reference

Schema: Design Details SECTION.md v3.2
Source: https://causal.so/
Website: Causal
Section ID: 2bf2c057-56a6-4104-a999-b46c03d9fa9c
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×635px root; block

## Visual signature

minimal, typographic, geometric, corporate, bento-box, spatial treatment at 1440×1094px. The crop spans 11975–13069px of a 13069px page.

## Components

- Navigation Bar
- Hero
- Primary Button
- Feature Collection
- Testimonial Card
- FAQ Accordion
- Footer
- Product UI
- Floating Element Scatter
- Logo Watermark

## 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×635px root; block
- Layout: 1440×635px root; block
- Styles: minimal, typographic, geometric, corporate, bento-box, spatial
- Components: Navigation Bar, Hero, Primary Button, Feature Collection, Testimonial Card, FAQ Accordion, Footer, Product UI, Floating Element Scatter, Logo Watermark
- Purpose: footer section from the Home page of Causal.
- Visual signature: rgb(249, 249, 249) with 1440×635px root; block. Inspect the crop for image and content hierarchy.

### Crop and composition

- Crop: 1440×1094px; aspect ratio 1.316:1
- Page bounds: 11975–13069px of 13069px
- 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": "Manrope Variable",
      "stack": "\"Manrope Variable\", ui-sans-serif, system-ui, sans-serif",
      "size": "448.2px",
      "weight": "500",
      "lineHeight": "448.2px",
      "letterSpacing": "normal",
      "sample": "causal",
      "element": "span",
      "occurrences": 1,
      "sourceId": "font-25"
    }
  ],
  "siteRoles": [
    {
      "role": "display",
      "size": "60px",
      "family": "Manrope Variable",
      "source": "computed",
      "traits": "Regular",
      "weight": "700",
      "evidence": "font-10: computed CSS at 1440×1000; AI role: 60px Manrope Variable, weight 700, used for the main hero h1.",
      "sampleId": "font-10",
      "confidence": 1,
      "lineHeight": "72px",
      "letterSpacing": "normal"
    },
    {
      "role": "heading",
      "size": "50px",
      "family": "Manrope Variable",
      "source": "computed",
      "traits": "Regular",
      "weight": "650",
      "evidence": "font-7: computed CSS at 1440×1000; AI role: 50px Manrope Variable, weight 650, used for primary section h2 headings.",
      "sampleId": "font-7",
      "confidence": 1,
      "lineHeight": "70px",
      "letterSpacing": "normal"
    },
    {
      "role": "body",
      "size": "16px",
      "family": "Manrope Variable",
      "source": "computed",
      "traits": "Regular",
      "weight": "500",
      "evidence": "font-1: computed CSS at 1440×1000; AI role: 16px Manrope Variable, weight 500, used for standard paragraph text and subheadings.",
      "sampleId": "font-1",
      "confidence": 1,
      "lineHeight": "23px",
      "letterSpacing": "normal"
    },
    {
      "role": "mono",
      "size": "12px",
      "family": null,
      "source": "computed",
      "traits": "Regular",
      "weight": "350",
      "evidence": "font-30: computed CSS at 1440×1000; AI role: 12px monospace font used for specific technical terms or UI labels like 'SM-2'.",
      "sampleId": "font-30",
      "confidence": 0.9,
      "lineHeight": "18px",
      "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": [],
  "functionalPalette": [
    {
      "hex": "#1A1A1A",
      "name": "text",
      "role": "text",
      "source": "computed",
      "evidence": "color-4: computed rgb(26, 26, 26); AI role: rgb(26, 26, 26) (#1A1A1A) is the primary color for headings, body text, and icons.",
      "sampleId": "color-4",
      "confidence": 1
    },
    {
      "hex": "#F9F9F9",
      "name": "canvas",
      "role": "canvas",
      "source": "computed",
      "evidence": "color-1: computed rgb(249, 249, 249); AI role: rgb(249, 249, 249) (#F9F9F9) acts as the primary background color for the page body.",
      "sampleId": "color-1",
      "confidence": 0.9
    },
    {
      "hex": "#878787",
      "name": "muted text",
      "role": "muted-text",
      "source": "computed",
      "evidence": "color-3: computed rgb(135, 135, 135); AI role: rgb(135, 135, 135) (#878787) is used for secondary text like navigation links and descriptive copy.",
      "sampleId": "color-3",
      "confidence": 0.9
    },
    {
      "hex": "#000000",
      "name": "primary action",
      "role": "primary-action",
      "source": "computed",
      "evidence": "color-11: computed rgb(0, 0, 0); AI role: Solid black is used for the prominent pill-shaped CTA buttons.",
      "sampleId": "color-11",
      "confidence": 0.9
    },
    {
      "hex": "#EEEEEE",
      "name": "surface",
      "role": "surface",
      "source": "computed",
      "evidence": "color-2: computed rgb(238, 238, 238); AI role: rgb(238, 238, 238) (#EEEEEE) is used for distinct background areas like feature cards and input/control backgrounds.",
      "sampleId": "color-2",
      "confidence": 0.8
    },
    {
      "hex": "#F2F2F2",
      "name": "border",
      "role": "border",
      "source": "computed",
      "evidence": "color-7: computed rgb(242, 242, 242); AI role: rgb(242, 242, 242) (#F2F2F2) is used subtly to differentiate elements, often acting in place of explicit borders.",
      "sampleId": "color-7",
      "confidence": 0.7
    }
  ]
}
```

### Design tokens

```json
{
  "radius": "Large border radii on feature cards (likely 16px-24px) and fully rounded, pill-shaped primary buttons.",
  "density": "Low density. The layout prioritizes openness and clarity, using large typography and ample padding to reduce visual clutter.",
  "evidence": "Visual inspection of the full-page layout reveals consistent rounded corners, reliance on surface colors over borders, and significant spacing between discrete blocks.",
  "borderStyle": "Mostly borderless design. Separation of elements relies on subtle contrast between off-white canvas and light gray surface backgrounds rather than drawn lines.",
  "buttonStyle": "Solid fill, pill-shaped, with high contrast text (black fill, white text). No borders or drop shadows are visible on buttons.",
  "cornerStyle": "Highly rounded. Nearly all structural containers feature significant rounding, avoiding sharp corners.",
  "contentWidth": "Content is centered with a max-width that keeps text blocks readable, while visual bento grids span wider to fill more of the viewport.",
  "spacingRhythm": "Generous macro-whitespace separates major sections, allowing the content to breathe. Micro-spacing within bento cards is tighter but maintains clear logical groupings."
}
```

### Reconstruction specification

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

- Root: 1440×635px; block; padding {"top":"32px","right":"32px","bottom":"32px","left":"32px"}; gap normal; background rgb(249, 249, 249); radius 0px.
- Observed gaps: 16px.
- Representative content widths: 1376px.
- Layout containers: 0; cards/surfaces: 0; media elements: 2; browser animations: 0.

#### Container, grid, and spacing

```json
{
  "viewport": {
    "width": 1440,
    "captureBounds": {
      "top": 11975,
      "bottom": 13069,
      "pageHeight": 13069
    }
  },
  "container": {
    "size": "1440×635px",
    "position": "x 0px, y 12434px",
    "display": "block",
    "positionMode": "static",
    "padding": {
      "top": "32px",
      "right": "32px",
      "bottom": "32px",
      "left": "32px"
    },
    "margin": {
      "top": "0px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "gap": "normal",
    "columns": "not captured",
    "background": "rgb(249, 249, 249)",
    "radius": "0px",
    "border": "0px solid rgb(26, 26, 26)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "observedGapsPx": [
      16
    ],
    "representativeContentWidthsPx": [
      1376
    ]
  },
  "columns": []
}
```

#### Cards and surfaces

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

#### Media treatment

```json
[
  {
    "element": "canvas · pointer-events-none absolute inset-0 z-0 h-full w-full",
    "size": "1376×420px",
    "position": "x 32px, y 11982px",
    "aspectRatio": 3.3,
    "objectFit": "fill",
    "objectPosition": "50% 50%",
    "radius": "0px",
    "overflow": "clip",
    "source": "source not captured"
  },
  {
    "element": "svg · svg",
    "size": "20×20px",
    "position": "x 791px, y 12182px",
    "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-10-10T06:10:13.748Z",
  "viewportWidth": 1440,
  "bounds": {
    "top": 11975,
    "bottom": 13069,
    "pageHeight": 13069
  },
  "root": {
    "id": "ld-2052",
    "tag": "footer",
    "role": null,
    "label": "ProductFeaturesTemplatesProductivityFAQGet startedSolutionsFoundersDesignersContent creatorsResource",
    "rect": {
      "x": 0,
      "y": 12434,
      "width": 1440,
      "height": 635
    },
    "display": "block",
    "position": "static",
    "padding": {
      "top": "32px",
      "right": "32px",
      "bottom": "32px",
      "left": "32px"
    },
    "margin": {
      "top": "0px",
      "right": "0px",
      "bottom": "0px",
      "left": "0px"
    },
    "gap": "normal",
    "columns": null,
    "background": "rgb(249, 249, 249)",
    "radius": "0px",
    "border": "0px solid rgb(26, 26, 26)",
    "shadow": "none",
    "overflow": "visible"
  },
  "spacing": {
    "gapsPx": [
      16
    ],
    "representativeContentWidthsPx": [
      1376
    ]
  },
  "columns": [],
  "cards": [],
  "surfaces": {
    "radii": [
      "100px"
    ],
    "borders": [],
    "shadows": []
  },
  "media": [
    {
      "id": "ld-2043",
      "tag": "canvas",
      "role": null,
      "label": "pointer-events-none absolute inset-0 z-0 h-full w-full",
      "rect": {
        "x": 32,
        "y": 11982,
        "width": 1376,
        "height": 420
      },
      "aspectRatio": 3.3,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "clip",
      "media": null
    },
    {
      "id": "ld-2050",
      "tag": "svg",
      "role": null,
      "label": "svg",
      "rect": {
        "x": 791,
        "y": 12182,
        "width": 20,
        "height": 20
      },
      "aspectRatio": 1,
      "objectFit": "fill",
      "objectPosition": "50% 50%",
      "radius": "0px",
      "overflow": "hidden",
      "media": null
    }
  ],
  "animations": [],
  "coverage": {
    "elementsInSection": 41,
    "cards": 0,
    "media": 2,
    "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 “CTA and multi-column site footer”.

Purpose: footer section from the Home page of Causal.

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

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

Components: Navigation Bar, Hero, Primary Button, Feature Collection, Testimonial Card, FAQ Accordion, Footer, Product UI, Floating Element Scatter, Logo Watermark.

Style direction: minimal, typographic, geometric, corporate, bento-box, spatial.

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

Typography evidence: {"role":"display","size":"60px","family":"Manrope Variable","source":"computed","traits":"Regular","weight":"700","evidence":"font-10: computed CSS at 1440×1000; AI role: 60px Manrope Variable, weight 700, used for the main hero h1.","sampleId":"font-10","confidence":1,"lineHeight":"72px","letterSpacing":"normal"} {"role":"heading","size":"50px","family":"Manrope Variable","source":"computed","traits":"Regular","weight":"650","evidence":"font-7: computed CSS at 1440×1000; AI role: 50px Manrope Variable, weight 650, used for primary section h2 headings.","sampleId":"font-7","confidence":1,"lineHeight":"70px","letterSpacing":"normal"} {"role":"body","size":"16px","family":"Manrope Variable","source":"computed","traits":"Regular","weight":"500","evidence":"font-1: computed CSS at 1440×1000; AI role: 16px Manrope Variable, weight 500, used for standard paragraph text and subheadings.","sampleId":"font-1","confidence":1,"lineHeight":"23px","letterSpacing":"normal"} {"role":"mono","size":"12px","family":null,"source":"computed","traits":"Regular","weight":"350","evidence":"font-30: computed CSS at 1440×1000; AI role: 12px monospace font used for specific technical terms or UI labels like 'SM-2'.","sampleId":"font-30","confidence":0.9,"lineHeight":"18px","letterSpacing":"normal"}

Color evidence: {"hex":"#1A1A1A","name":"text","role":"text","source":"computed","evidence":"color-4: computed rgb(26, 26, 26); AI role: rgb(26, 26, 26) (#1A1A1A) is the primary color for headings, body text, and icons.","sampleId":"color-4","confidence":1} {"hex":"#F9F9F9","name":"canvas","role":"canvas","source":"computed","evidence":"color-1: computed rgb(249, 249, 249); AI role: rgb(249, 249, 249) (#F9F9F9) acts as the primary background color for the page body.","sampleId":"color-1","confidence":0.9} {"hex":"#878787","name":"muted text","role":"muted-text","source":"computed","evidence":"color-3: computed rgb(135, 135, 135); AI role: rgb(135, 135, 135) (#878787) is used for secondary text like navigation links and descriptive copy.","sampleId":"color-3","confidence":0.9} {"hex":"#000000","name":"primary action","role":"primary-action","source":"computed","evidence":"color-11: computed rgb(0, 0, 0); AI role: Solid black is used for the prominent pill-shaped CTA buttons.","sampleId":"color-11","confidence":0.9} {"hex":"#EEEEEE","name":"surface","role":"surface","source":"computed","evidence":"color-2: computed rgb(238, 238, 238); AI role: rgb(238, 238, 238) (#EEEEEE) is used for distinct background areas like feature cards and input/control backgrounds.","sampleId":"color-2","confidence":0.8} {"hex":"#F2F2F2","name":"border","role":"border","source":"computed","evidence":"color-7: computed rgb(242, 242, 242); AI role: rgb(242, 242, 242) (#F2F2F2) is used subtly to differentiate elements, often acting in place of explicit borders.","sampleId":"color-7","confidence":0.7}

Typography measured inside this section: {"id":"font-25","family":"Manrope Variable","fontStack":"\"Manrope Variable\", ui-sans-serif, system-ui, sans-serif","weight":"500","size":"448.2px","lineHeight":"448.2px","letterSpacing":"normal","traits":"Regular","count":1,"contexts":[{"tag":"span","text":"causal","top":12723,"property":"font"}]}

No section-bounded color samples were measured.

Exact section measurements from the saved element map: root {"rect":{"x":0,"y":12434,"width":1440,"height":635},"padding":{"top":"32px","right":"32px","bottom":"32px","left":"32px"},"gap":"normal","columns":null,"overflow":"visible"}; spacing {"gapsPx":[16],"representativeContentWidthsPx":[1376]}; surfaces {"radii":["100px"],"borders":[],"shadows":[]}; media [{"tag":"canvas","rect":{"x":32,"y":11982,"width":1376,"height":420},"aspectRatio":3.3,"objectFit":"fill","objectPosition":"50% 50%","radius":"0px"},{"tag":"svg","rect":{"x":791,"y":12182,"width":20,"height":20},"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.
