Section walkthrough · desktop

jennakutcher.com

Every band of the origin page, in order: what the section is, what it is for, and the exact doc.json that reproduces it — element by element, with the placement, typography and colour each one carries, set beside the origin it was read from.

Viewport
1512×982@2×
Origin
17,250px
Build
16,011px
Δ
-1,239px
Sections
19
Elements
170
Assets
30
Platform
Showit

How to read this

Each entry pairs the origin band with the build of it, both cut from full-page shots taken at 1512×982@2×, then gives the document subtree underneath. The document is not a copy — it is a recomposition into a fixed vocabulary of five categories, seventeen section layouts and seven element types. Where the two diverge, the divergence is named.

Why 1512
scripts/tools/config.ts defines this project's desktop viewport as 1512×982@2×; the capture was recorded at it and doc.json was authored against it. The grid is proportional, so a shot at any other width shows a page whose row arithmetic no longer matches the placements written in the document.
Every number here is generated
Placements, footprints, type blocks, band heights and element counts are read out of doc.json, bands.json and measured.json when this page is built. Only the readings — what a band is, why a layout was chosen — are authored, and they live in prose.ts. Re-run bun docs/references/jennakutcher.com/build.ts after any change to the document and the numbers follow.

The data structure

A document is five things: a grid, a brand, an assets table, and a page holding sections holding elements. Everything visual derives from those — no stylesheets, and no arbitrary values to reach for.

{…}{6 keys
"version": 3,
"title": "Jenna Kutcher",
"grid": {…}{7 keys
"cols": 24,
"mobileCols": 8,
"rowPct": 2.15,
"maxWidth": 1200,
"mobileMax": 767,
"gutter": 16,
"rowMin": "1.9rem"
},
"brand": {…}{6 keys
"name": "Jenna Kutcher",
"colours": ["#eb6c2f", "#6579be", "#eec3e5", "#f2dc53", "#ffffff", "#f2efe8", "#18161b"],
"variant": 0,
"type": {…}{5 keys
"display": "'Reckless Neue', ui-serif, Georgia, 'Times New Roman', serif",
"body": "'Circular', ui-sans-serif, system-ui, 'Helvetica Neue', Arial, sans-serif",
"scale": {…}{8 keys
"sm": ["0.875rem", "1.6"],
"base": ["1rem", "1.7"],
"lg": ["1.1875rem", "1.6"],
"xl": […][2 items
"clamp(1.32rem, calc(1.5rem * tan(atan2(var(--content), var(--content-max)))), 1.5rem)",
"1.35"
],
"2xl": […][2 items
"clamp(1.67rem, calc(2rem * tan(atan2(var(--content), var(--content-max)))), 2rem)",
"1.25"
],
"3xl": […][2 items
"clamp(2.1rem, calc(2.75rem * tan(atan2(var(--content), var(--content-max)))), 2.75rem)",
"1.12"
],
"4xl": […][2 items
"clamp(2.61rem, calc(3.75rem * tan(atan2(var(--content), var(--content-max)))), 3.75rem)",
"1.05"
],
"5xl": […][2 items
"clamp(3.1rem, calc(5rem * tan(atan2(var(--content), var(--content-max)))), 5rem)",
"1"
]
},
"families": {…}{2 keys
"mono": "'Maison Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace",
"condensed": "'Moderat Condensed', 'Arial Narrow', ui-sans-serif, system-ui, sans-serif"
},
"faces": […][7 items
{…}{3 keys
"family": "Reckless Neue",
"src": "captured/_root/origin/fonts/247b773492a73006.woff",
"weight": 300
},
{…}{3 keys
"family": "Reckless Neue",
"src": "captured/_root/origin/fonts/3f270964bd25b551.woff",
"weight": 400
},
{…}{3 keys
"family": "Reckless Neue",
"src": "captured/_root/origin/fonts/790ba558abfe85f5.woff",
"weight": 500
},
{…}{3 keys
"family": "Circular",
"src": "captured/_root/origin/fonts/5d99f452314f691b.woff",
"weight": 400
},
{…}{3 keys
"family": "Circular",
"src": "captured/_root/origin/fonts/592791c1c9185abe.woff",
"weight": 700
},
{…}{3 keys
"family": "Maison Mono",
"src": "captured/_root/origin/fonts/09c84fcd02266f59.woff",
"weight": 400
},
{…}{3 keys
"family": "Moderat Condensed",
"src": "captured/_root/origin/fonts/a6918a8afe888946.woff",
"weight": 900
}
]
},
"shape": {…}{2 keys
"radius": {…}{5 keys
"sm": "0.125rem",
"md": "0.25rem",
"lg": "0.5rem",
"xl": "0.75rem",
"full": "9999px"
},
"shadow": "0 1px 2px rgb(24 22 27 / 0.05), 0 10px 30px rgb(24 22 27 / 0.08)"
},
"surfaces": {…}{2 keys
"primary": {…}{2 keys
"ground": "#eb6c2f",
"ink": {…}{4 keys
"strong": "#ffffff",
"body": "#ffffff",
"muted": "#ffffff",
"line": "#ff976a"
}
},
"secondary": {…}{2 keys
"ground": "#6579be",
"ink": {…}{4 keys
"strong": "#ffffff",
"body": "#ffffff",
"muted": "#ffffff",
"line": "#8298df"
}
}
}
},
"assets": { …30 entries, keyed by id — each { name, type, data } with the bytes base64'd… },
"page": {…}{3 keys
"id": "jk0053",
"type": "page",
"kids": [ …19 sections, each one walked below… ]
}
}

Grid — what a placement means

KeyValueResolves at 1512 to
cols2424 equal columns, no column gap
mobileCols8below the 768px breakpoint
maxWidth / capContent1200 / undefined min(100vw − 32px, 1200px)1200px, 156px margins
gutter16page margin, not a column gap
— column widthderived1200 ÷ 24 = 50px
rowPct / rowMin2.15 / 1.9rem max(2.15% × 1200, 30.4px)30.4px — the floor engages

Every element carries at: [colStart, colEnd, rowStart, rowEnd], end-exclusive, emitted as grid-column: colStart / colEnd. So [1, 25] is the full 1200px column; [1, 12] and [14, 25] are the library's two-up, 550px each with a 100px channel between them.

Brand — colours, in the order they were given

colours is an ordered list, not a palette with roles. The builder classifies it: accents split from neutrals at a chroma threshold, missing roles collapse onto the one before, and the structural light and dark come from the curated pair named by variant: 0. The only thing the order decides is which accent leads.

#eb6c2f
#6579be
#eec3e5
#f2dc53
#ffffff
#f2efe8
#18161b

Surface and ink roles — the whole colour vocabulary

A surface is a scope, not a value: naming one on a section rebinds what every ink role means inside it. That is why ink-strong is near-black on cream and white on the deep band, with nothing in the document saying so.

Surfacegroundink-strongink-bodyBands using it
canvas#ffffff#18161b#453935the four course bands
raised#f2efe8#18161b#3c302cFlodesk bar, footer
deep#18161b#ffffff#d6c8c2hero, Favorite Things
primary#eb6c2frebound per scopequiz, book, orange bands
secondary#6579berebound per scopepositioning, stats, blog
tertiary#eec3e5rebound per scopefreebies, podcast

Type — a bounded scale, and the origin's own faces

There is no text-[17px]. 8 rungs, each a [size, leading] pair, every rung above lg a clamp() so the scale tracks the viewport rather than the row.

RungDeclaredAt 1512Leading
sm0.875rem 14px1.6
base1rem 16px1.7
lg1.1875rem 19px1.6
xlclamp() clamped1.35
2xlclamp() clamped1.25
3xlclamp() clamped1.12
4xlclamp() clamped1.05
5xlclamp() clamped1
FamilyWeightFile
Reckless Neue300247b773492a73006.woff
Reckless Neue4003f270964bd25b551.woff
Reckless Neue500790ba558abfe85f5.woff
Circular4005d99f452314f691b.woff
Circular700592791c1c9185abe.woff
Maison Mono40009c84fcd02266f59.woff
Moderat Condensed900a6918a8afe888946.woff
Two families, four faces
A Brand holds display and body. Mono and condensed reach the page through brand.type.families. Weight on this origin is carried by the family nameCircular Bold and Circular Book are two @font-face families both at weight 400 — so they are re-declared as one family with real weights, or nothing downstream can select a cut.

The extended vocabulary

This document uses fifteen proposed additions to the model, each a new field beside the existing ones rather than a rewrite of one, and none of them a setting — the validator bounds those strictly. The document still validates, and --no-extensions still renders a whole page. They appear in the Extensions column of every element table below.

FieldShapeSays
brand.type.faces[{family, src, weight?}]the file this family is
brand.type.familiesRecord<slot, string>more than two families
brand.surfacesRecord<role, {ground?, ink?, scrim?}>paint my colour, and do not wash it
grid.rowMinCSS lengthrows stop shrinking here
grid.capContentbooleanhonour the maxWidth already carried
section.ink{strong?, body?, muted?, line?}this band disagrees with its role
section.gradient{angle, stops[]}this ground is not a colour
section.scrimfalsethis photograph is not tinted
node.typography{family?, weight?, size?, tracking?, leading?, transform?}the six axes the registry welds into a class
node.fit'cover' | 'contain'how the artwork sits in its box
node.inkhexthis element's own colour
node.runs[{text, ink?, family?}]this fragment's own colour
node.panel{fill, radius?}paint a filled box
node.underlinefalsenot this link
node.rotate<number>degturn it

The bands

Boundaries in document pixels, from the top-level children of outline.json, confirmed against a background change in resting.png. Build heights are measured live off dist/index.html. A reader would name 20 bands; the document has 19 sections, and band 05 is where the two differ.

#Origin yBandSectionLayoutΔ height
01 0–246 Flodesk announcement bar jk0005 hero.banner +28
02 246–1214 Hero — wordmark, cut-out, AS SEEN IN jk000k hero.photo +427
03 1214–2236 I help Creative, Multi-Passionate Women… jk000o features.three -117
04 2236–3179 Quiz — ARE YOU READY TO LEVEL UP? jk000u features.split +127
05 3179–5197 Freebies — 3 cards, and Looking For More? jk001b features.three +53
06 5197–6072 Podcast stats — 115M / 900+ / 12,000+ jk001j features.stats 0
07 6072–7061 Podcast — two columns + episode list jk0023 features.list +38
08 7061–8374 Blog — NOT YOUR AVERAGE BIZ BLOG jk002l features.list -165
09 8374–9140 Book — Worldwide Bestseller jk002p features.split +139
10 9140–10178 Course 01 — The Content Lab jk002x features.split -497
11 10178–11160 Course 02 — The Pinterest Lab jk0035 features.split -421
12 11160–12142 Course 03 — The Podcast Lab jk003d features.split -441
13 12142–13068 Course 04 — The List to Launch Lab jk003l features.split -365
14 13068–14040 Favorite Things jk003q features.split -194
15 14040–14576 Beauty / Business / Health jk0040 features.three +126
16 14576–15284 Ultimate Guide to Pinterest jk0045 features.imageLeft -19
17 15284–16048 Bringing Real to Your Inbox — signup jk0049 contact.simple -94
18 16048–16592 Footer — signature, bio, socials, Get Around jk004t contact.split +57
19 16592–17250 Instagram strip + caption + copyright jk0052 contact.simple +76

Sections

01

Flodesk announcement bar

hero hero.banner jk0005
Origin y
0–246
Origin height
246px
Build height
274px
Δ
+28px
Ground
raised
space
1 rows · 30px
Elements
4
Origin — Flodesk announcement bar
ORIGIN · y 0–246 · 246px · cream #f2efe8
Build — Flodesk announcement bar
BUILD · y 0–274 · 274px · jk0005

What this band is

A paid-partnership strip sitting above everything, including the navigation. A tablet photograph turned a few degrees off square, a question set large in the serif with blank page picked out in an underlined italic, the offer in small bold sans, and a solid orange call to action. It is an advertisement, and the page treats it as one — cream ground, no relationship to the hero below it.

Why this category and layout

Nothing in the vocabulary is for an announcement bar, so the question is which layout is nearest in arrangement: media on the left, words in the middle, action on the right, all in one shallow full-width band. hero.banner is that shape. The hero category is a claim about arrangement rather than about importance — this band is not the page's hero and does not pretend to be.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 4 elements the table below summarises.

{…}{7 keys
"id": "jk0005",
"type": "section",
"layout": "hero.banner",
"category": "hero",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "raised",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 1
},
"kids": […][4 items
{…}{11 keys
"id": "jk0001",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:flodesk-tablet",
"alt": "A tablet showing the Freebie Delivery Sequence"
}
},
"at": [1, 4, 1, 8],
"slot": "media",
"fit": "contain",
"rotate": "-8deg"
},
{…}{10 keys
"id": "jk0002",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Tired of staring at a <em>blank page</em> every time you sit down to email your list?",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 15, 2, 7],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "light",
"size": "3xl",
"leading": "1.2",
"tracking": "0.01em",
"transform": "normal-case"
}
},
{…}{11 keys
"id": "jk0003",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>That stops here. Start your free Flodesk trial and get 4 done-for-you email sequences, built from my top-performing emails for FREE.</p>",
"align": "left",
"colour": "ink-body"
},
"at": [16, 25, 2, 5],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.4",
"tracking": "0.01em",
"transform": "normal-case"
},
"ink": "#191816"
},
{…}{11 keys
"id": "jk0004",
"type": "button",
"layout": "button.solid",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-md px-6 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "I'M IN! BLANK PAGE, BE GONE!",
"link": {…}{2 keys
"href": "https://jennakutcher.com/flodesk",
"target": "_blank"
},
"fill": "primary",
"align": "start",
"width": "auto"
},
"at": [16, 24, 5, 7],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"ink": "#222222"
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk0001
image.plain
media [1, 4, 1, 8]
150×213px
2×2
stretch
layout default flodesk-tablet 6bb074f48baaec27.gif · image/gif fit=contain rotate=-8deg
jk0002
text.heading
headline [5, 15, 2, 7]
500×152px
4×1
stretch
display · light · 3xl · lh 1.2 · ls 0.01em ink-strong Tired of staring at a blank page every time you sit down to email your list?
jk0003
text.small
subhead [16, 25, 2, 5]
450×91px
3×1
stretch
body · bold · lg · lh 1.4 · ls 0.01em #191816 That stops here. Start your free Flodesk trial and get 4 done-for-you email s… ink
jk0004
button.solid
action [16, 24, 5, 7]
400×61px
2×1
stretch
body · bold · sm · lh 1.6 · ls 0.1em · uppercase #222222 I'M IN! BLANK PAGE, BE GONE! ink

Element-scope extensions in this band: node.fit, node.rotate, node.typography, node.ink

Render against origin

The build runs 28px taller. The type, the rotation and the artwork all trace; the extra height is the grid rounding a 246px band up to whole rows.

The tablet is an animated GIF, and stays one
flodesk-tablet is image/gif. An earlier extraction flattened five animated GIFs on this page to PNG, which keeps one frame and silently discards the rest. The document now embeds the file in the format the origin served, and doc:render reports any mismatch between an asset's name and its type.
02

Hero — wordmark, cut-out, AS SEEN IN

hero hero.photo jk000k
Origin y
246–1214
Origin height
968px
Build height
1395px
Δ
+427px
Ground
deep + photo
space
0 rows
Elements
14
Origin — Hero — wordmark, cut-out, AS SEEN IN
ORIGIN · y 246–1214 · 968px · purple photograph
Build — Hero — wordmark, cut-out, AS SEEN IN
BUILD · y 274–1669 · 1395px · jk000k

What this band is

The page's actual opening: a photographic purple ground, the serif wordmark "Jenna Kutcher" set enormous, a cut-out of Jenna on a stool composited over it, eight navigation links across the top, two taglines flanking her at the waist, and an AS SEEN IN strip in the bottom left. The wordmark and the cut-out deliberately overlap — the letterforms run behind her.

Why this category and layout

hero.photo: a full-bleed photographic ground with content placed over it. The alternative, hero.split, would have put the photograph beside the words rather than under them, which is a different page. The ground is deep, and that is what buys light type over the photograph — naming the surface rebinds every ink inside the band without a single element saying so.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 14 elements the table below summarises.

{…}{8 keys
"id": "jk000k",
"type": "section",
"layout": "hero.photo",
"category": "hero",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{2 keys
"background": "deep",
"image": {…}{2 keys
"src": "asset:hero-ground",
"alt": ""
}
},
"kids": […][14 items
{…}{11 keys
"id": "jk0006",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Home",
"link": {…}{2 keys
"href": "https://jennakutcher.com/",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [3, 5, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk0007",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "About",
"link": {…}{2 keys
"href": "https://jennakutcher.com/meet-jenna",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [5, 7, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk0008",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Book",
"link": {…}{2 keys
"href": "https://jennakutcher.com/book",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [8, 10, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk0009",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Blog",
"link": {…}{2 keys
"href": "http://jennakutcherblog.com",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [10, 12, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk000a",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Courses",
"link": {…}{2 keys
"href": "https://jennakutcher.com/business",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [13, 15, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk000b",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Podcast",
"link": {…}{2 keys
"href": "https://jennakutcherblog.com/goal-digger-podcast/",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [15, 17, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk000c",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Speaking",
"link": {…}{2 keys
"href": "https://jennakutcher.com/speaking",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [18, 20, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk000d",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Freebies",
"link": {…}{2 keys
"href": "https://jennakutcher.com/freebies",
"target": "_self"
},
"fill": "deep",
"align": "center",
"width": "auto"
},
"at": [20, 22, 1, 3],
"slot": "nav",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.05em",
"transform": "normal-case"
},
"underline": false
},
{…}{10 keys
"id": "jk000e",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:wordmark",
"alt": "Jenna Kutcher"
}
},
"at": [4, 22, 4, 19],
"slot": "headline",
"fit": "contain"
},
{…}{12 keys
"id": "jk000f",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:hero-jenna",
"alt": "Jenna Kutcher in a blue suit, seated on a wooden stool"
}
},
"at": [6, 20, 11, 46],
"slot": "media",
"float": true,
"z": 2,
"fit": "contain"
},
{…}{11 keys
"id": "jk000g",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Build the business you've always <em>dreamed</em> about…",
"align": "left",
"colour": "ink-strong"
},
"at": [2, 10, 23, 27],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "2xl",
"leading": "1.3",
"tracking": "0.01em",
"transform": "normal-case"
},
"runs": […][1 item
{…}{2 keys
"text": "dreamed",
"ink": "#eec3e5"
}
]
},
{…}{11 keys
"id": "jk000h",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "…without losing yourself in it along the way.",
"align": "left",
"colour": "ink-strong"
},
"at": [18, 25, 25, 29],
"slot": "secondaryAction",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "2xl",
"leading": "1.3",
"tracking": "0.01em",
"transform": "normal-case"
},
"runs": […][1 item
{…}{2 keys
"text": "…without",
"ink": "#eec3e5"
}
]
},
{…}{11 keys
"id": "jk000i",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "As seen in",
"align": "left",
"colour": "ink-body"
},
"at": [1, 7, 30, 31],
"slot": "eyebrow",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "base",
"leading": "1.8",
"tracking": "0.2em",
"transform": "uppercase"
},
"ink": "#ffffff"
},
{…}{10 keys
"id": "jk000j",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:as-seen-in",
"alt": "As seen in USA Today"
}
},
"at": [1, 4, 31, 34],
"slot": "eyebrowMedia",
"fit": "contain"
}
],
"scrim": false
}

Section-scope extensions in use: section.scrim

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk0006
button.quiet
nav [3, 5, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em Home underline
jk0007
button.quiet
nav [5, 7, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em About underline
jk0008
button.quiet
nav [8, 10, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em Book underline
jk0009
button.quiet
nav [10, 12, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em Blog underline
jk000a
button.quiet
nav [13, 15, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em Courses underline
jk000b
button.quiet
nav [15, 17, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em Podcast underline
jk000c
button.quiet
nav [18, 20, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em Speaking underline
jk000d
button.quiet
nav [20, 22, 1, 3]
100×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.05em Freebies underline
jk000e
image.plain
headline [4, 22, 4, 19]
900×456px
2×2
stretch
layout default wordmark 7cf3282847b4cc2d.png · image/png fit=contain
jk000f
image.plain
media [6, 20, 11, 46]
700×1064px
2×2
stretch
layout default hero-jenna 59807983ad99f7a9.png · image/png fit=contain float z=2
jk000g
text.subheading
subhead [2, 10, 23, 27]
400×122px
3×1
stretch
body · bold · 2xl · lh 1.3 · ls 0.01em ink-strong
+1 runs
Build the business you've always dreamed about… runs×1
jk000h
text.subheading
secondaryAction [18, 25, 25, 29]
350×122px
3×1
stretch
body · bold · 2xl · lh 1.3 · ls 0.01em ink-strong
+1 runs
…without losing yourself in it along the way. runs×1
jk000i
text.eyebrow
eyebrow [1, 7, 30, 31]
300×30px
3×1
stretch
mono · normal · base · lh 1.8 · ls 0.2em · uppercase #ffffff As seen in ink
jk000j
image.plain
eyebrowMedia [1, 4, 31, 34]
150×91px
2×2
stretch
layout default as-seen-in 05cc6a5cf551ebce.gif · image/gif fit=contain

Element-scope extensions in this band: node.typography, node.underline, node.fit, node.float, node.z, node.runs, node.ink

Render against origin

The build is 427px taller, the largest positive divergence on the page. Fourteen elements placed over a photograph need more rows than the origin's absolutely-positioned Showit layout does, and the grid cannot overlap two elements into the same cells the way the origin overlaps the wordmark and the cut-out.

The circular badge is not in the document
"NICE TO MEET YOU! I'M JENNA." curved around a K monogram, sitting at the hero's bottom edge. The origin builds it from two stacked Showit elements — a ring and a monogram — and an image element carries one photograph. It is left out rather than shown cropped. In the origin crop above it is the shape straddling the band boundary; its bottom half appears at the top of band 03.
The AS SEEN IN strip names one publication, and the origin names nine
It is a 17-frame GIF cycling Forbes, TODAY, Women's Health, Target, Inc., Glamour, Allure, USA Today and Entrepreneur. A screenshot can only ever catch one frame — this capture caught Allure. Whichever frame is packed, the document asserts one masthead where the page claims nine, and the band is unmeasurable by any single diff number.
03

I help Creative, Multi-Passionate Women…

features features.three jk000o
Origin y
1214–2236
Origin height
1022px
Build height
905px
Δ
-117px
Ground
secondary
space
3 rows · 91px
Elements
3
Origin — I help Creative, Multi-Passionate Women…
ORIGIN · y 1214–2236 · 1022px · periwinkle #6579be
Build — I help Creative, Multi-Passionate Women…
BUILD · y 1668–2573 · 905px · jk000o

What this band is

One sentence, set very large in the serif, doing the whole job of saying what the business is: I help Creative, Multi-Passionate Women turn their Ideas into Steady Income while keeping their Freedom, Peace, and Joy intact. Six phrases inside it are picked out in pink, yellow and orange, and three of those carry a hand-drawn underline. Below it a paragraph of body copy and a pink pill button.

Why this category and layout

features.three by arrangement, though the band holds three elements rather than three columns — a headline, a paragraph and an action, stacked and centred on a periwinkle ground. The category is features because the band's job is to say what she does.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 3 elements the table below summarises.

{…}{7 keys
"id": "jk000o",
"type": "section",
"layout": "features.three",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "secondary",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 3
},
"kids": […][3 items
{…}{11 keys
"id": "jk000l",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "I help Creative, Multi-Passionate Women turn their Ideas into Steady Income while keeping their Freedom, Peace, and Joy intact.",
"align": "center",
"colour": "ink-strong"
},
"at": [2, 24, 3, 13],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "4xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"runs": […][7 items
{…}{2 keys
"text": "Creative,",
"ink": "#eec3e5"
},
{…}{2 keys
"text": "Multi-Passionate Women",
"ink": "#f2dc53"
},
{…}{2 keys
"text": "Ideas",
"ink": "#eeb19a"
},
{…}{2 keys
"text": "Steady Income",
"ink": "#eec3e5"
},
{…}{2 keys
"text": "Freedom,",
"ink": "#eeb19a"
},
{…}{2 keys
"text": "Peace,",
"ink": "#eec3e5"
},
{…}{2 keys
"text": "Joy",
"ink": "#f2dc53"
}
]
},
{…}{9 keys
"id": "jk000m",
"type": "text",
"layout": "text.lead",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-lg leading-relaxed text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>If you want a business that aligns with your values and fuels the life you actually *want,* you're in the right place. You don't need a huge audience or endless hours to succeed. You need a plan that cuts through the overwhelm and gives you the next right step. I've been where you are and I know how to guide you toward results that <strong>matter.</strong></p><p>Here you'll find tools, strategies, courses, podcast episodes, and trainings designed to help you take action and build a business that <strong>supports your dreams</strong> AND your <strong>life.</strong></p>",
"align": "center",
"colour": "ink-body"
},
"at": [6, 20, 14, 24],
"slot": "body"
},
{…}{11 keys
"id": "jk000n",
"type": "button",
"layout": "button.pill",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-full px-7 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "See what's new!",
"link": {…}{2 keys
"href": "https://jennakutcherblog.com/",
"target": "_blank"
},
"fill": "tertiary",
"align": "center",
"width": "auto"
},
"at": [9, 17, 25, 27],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#6579be"
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk000l
text.title
headline [2, 24, 3, 13]
1100×304px
4×1
stretch
display · normal · 4xl · lh 1.2 · ls normal ink-strong
+7 runs
I help Creative, Multi-Passionate Women turn their Ideas into Steady Income w… runs×7
jk000m
text.lead
body [6, 20, 14, 24]
700×304px
3×1
stretch
layout default ink-body If you want a business that aligns with your values and fuels the life you ac…
jk000n
button.pill
action [9, 17, 25, 27]
400×61px
2×1
stretch
body · bold · lg · lh 1.8 · ls 0.15em · uppercase #6579be See what's new! ink

Element-scope extensions in this band: node.typography, node.runs, node.ink

Render against origin

The build comes in 117px short. The sentence itself traces word for word, including all six accent runs.

Six colours inside one sentence
A text element has one colour setting, and this sentence needs six. node.runs[{ text, ink?, family? }] — is the extension that carries them: the fragment, not the element, owns the colour. Before iteration 8 the whole sentence was set near-black, which is the contrast layer refusing what the base vocabulary cannot express.
04

Quiz — ARE YOU READY TO LEVEL UP?

features features.split jk000u
Origin y
2236–3179
Origin height
943px
Build height
1070px
Δ
+127px
Ground
primary
space
0 rows
Elements
5
Origin — Quiz — ARE YOU READY TO LEVEL UP?
ORIGIN · y 2236–3179 · 943px · orange photograph
Build — Quiz — ARE YOU READY TO LEVEL UP?
BUILD · y 2574–3644 · 1070px · jk000u

What this band is

A quiz invitation over a photographic orange ground. A mono eyebrow reading FREE QUIZ, then ARE YOU READY TO LEVEL UP? in heavy condensed caps, a short paragraph, and an arrow link. The photograph of Jenna occupies the right half.

Why this category and layout

features.split — words on one side, photograph on the other. The eyebrow/headline/body/action stack is exactly the features slot vocabulary, so every piece of content has somewhere to go.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 5 elements the table below summarises.

{…}{7 keys
"id": "jk000u",
"type": "section",
"layout": "features.split",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{2 keys
"background": "primary",
"image": {…}{2 keys
"src": null,
"alt": ""
}
},
"kids": […][5 items
{…}{9 keys
"id": "jk000p",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:quiz",
"alt": "Jenna Kutcher in a pink shirt against an orange wall"
}
},
"at": [12, 25, 1, 32],
"slot": "media"
},
{…}{12 keys
"id": "jk000q",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Free quiz",
"align": "center",
"colour": "ink-strong"
},
"at": [17, 23, 4, 6],
"slot": "subhead",
"float": true,
"z": 2,
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "lg",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
}
},
{…}{9 keys
"id": "jk000r",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Are you ready to <strong>level up?</strong>",
"align": "left",
"colour": "ink-strong"
},
"at": [2, 11, 7, 13],
"slot": "headline"
},
{…}{10 keys
"id": "jk000s",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Except instead of a video game, this is you <em>IRL</em>. Take this quick 5-question quiz so I can hand over laser-focused, curated resources specific to your goals and how YOU want to grow!</p>",
"align": "left",
"colour": "ink-body"
},
"at": [2, 10, 14, 21],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "xl",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{11 keys
"id": "jk000t",
"type": "button",
"layout": "button.pill",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-full px-7 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Curious? Take the quiz →",
"link": {…}{2 keys
"href": "https://jennakutcher.com/level-up-quiz-embed-page",
"target": "_blank"
},
"fill": "canvas",
"align": "start",
"width": "auto"
},
"at": [2, 10, 22, 26],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#6579be"
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk000p
image.plain
media [12, 25, 1, 32]
650×942px
2×2
stretch
layout default quiz 13b01a67e70b36c0.jpg · image/jpeg
jk000q
text.eyebrow
subhead [17, 23, 4, 6]
300×61px
3×1
stretch
mono · normal · lg · lh 1.8 · ls 0.15em · uppercase ink-strong Free quiz float z=2
jk000r
text.title
headline [2, 11, 7, 13]
450×182px
4×1
stretch
layout default ink-strong Are you ready to level up?
jk000s
text.body
body [2, 10, 14, 21]
400×213px
3×1
stretch
body · normal · xl · lh 1.8 · ls normal ink-body Except instead of a video game, this is you IRL. Take this quick 5-question q…
jk000t
button.pill
action [2, 10, 22, 26]
400×122px
2×1
stretch
body · bold · lg · lh 1.8 · ls 0.15em · uppercase #6579be Curious? Take the quiz → ink

Element-scope extensions in this band: node.typography, node.float, node.z, node.ink

Render against origin

The build runs 127px taller. The condensed face is the origin's own Moderat Condensed at weight 900, reaching the page through brand.type.families.condensed.

05

Freebies — 3 cards, and Looking For More?

features features.three jk001b
Origin y
3179–5197
Origin height
2018px
Build height
2071px
Δ
+53px
Ground
tertiary
space
3 rows · 91px
Elements
22
Origin — Freebies — 3 cards, and Looking For More?
ORIGIN · y 3179–5197 · 2018px · pink #eec3e5
Build — Freebies — 3 cards, and Looking For More?
BUILD · y 3644–5715 · 2071px · jk001b
Two origin bands, one section
3179–4893 Freebies  +  4893–5197 Looking For More? — 4 links

What this band is

Two origin bands, and the longest stretch of the page: three free downloads laid out as a checkerboard of white cards on pink — an eyebrow naming the format, a title, and a photograph each — followed by Looking For More? I Got You. and four quiet links to further freebie collections.

Why this category and layout

features.three, three content units across a band. The four links below are placed as a row of button.quiet at rows 61–64, inside the same section rather than in one of their own.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 22 elements the table below summarises.

{…}{7 keys
"id": "jk001b",
"type": "section",
"layout": "features.three",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "tertiary",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 3
},
"kids": […][22 items
{…}{11 keys
"id": "jk000v",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Free downloads to elevate your game.",
"align": "center",
"colour": "ink-body"
},
"at": [8, 18, 3, 5],
"slot": "subhead",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "lg",
"leading": "1.5",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk000w",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Freebies",
"align": "center",
"colour": "ink-strong"
},
"at": [4, 22, 5, 10],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "light",
"size": "5xl",
"leading": "1.2",
"tracking": "0.025em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{9 keys
"id": "jk000x",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:freebie-success",
"alt": "Jenna Kutcher in a lilac top against a lavender wall"
}
},
"at": [5, 13, 12, 26],
"slot": "media"
},
{…}{12 keys
"id": "jkp000",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [13, 21, 12, 26],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 34, 45]
}
},
{…}{12 keys
"id": "jkp001",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [15, 20, 14, 16],
"float": true,
"z": -1,
"panel": {…}{2 keys
"fill": "#f2dc53",
"radius": "full"
},
"mobile": {…}{1 key
"at": [1, 9, 34, 36]
}
},
{…}{10 keys
"id": "jk000y",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Free worksheet",
"align": "center",
"colour": "ink-strong"
},
"at": [15, 20, 14, 16],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
}
},
{…}{11 keys
"id": "jk000z",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcher.com/successworksheet">Write Your Own Definition of Success (and Build an Action Plan for Living It Out)</a>",
"align": "center",
"colour": "ink-strong"
},
"at": [14, 20, 17, 23],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "2xl",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{12 keys
"id": "jkp002",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [5, 13, 26, 40],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 68, 79]
}
},
{…}{9 keys
"id": "jk0010",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:freebie-podcast",
"alt": "Jenna Kutcher in a red top wearing headphones"
}
},
"at": [13, 21, 26, 40],
"slot": "media"
},
{…}{12 keys
"id": "jkp003",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [7, 12, 28, 30],
"float": true,
"z": -1,
"panel": {…}{2 keys
"fill": "#6579be",
"radius": "full"
},
"mobile": {…}{1 key
"at": [1, 9, 68, 70]
}
},
{…}{11 keys
"id": "jk0011",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Free download",
"align": "center",
"colour": "ink-strong"
},
"at": [7, 12, 28, 30],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#ffffff"
},
{…}{11 keys
"id": "jk0012",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcher.com/startapodcast">How to Start a Podcast from Scratch (in 3 Easy Steps!)</a>",
"align": "center",
"colour": "ink-strong"
},
"at": [6, 12, 31, 37],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "2xl",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk0013",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:freebie-list",
"alt": "Jenna Kutcher pinning photographs to a wall"
}
},
"at": [5, 13, 40, 54],
"slot": "media"
},
{…}{12 keys
"id": "jkp004",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [13, 21, 40, 54],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 102, 113]
}
},
{…}{12 keys
"id": "jkp005",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [15, 20, 42, 44],
"float": true,
"z": -1,
"panel": {…}{2 keys
"fill": "#eec3e5",
"radius": "full"
},
"mobile": {…}{1 key
"at": [1, 9, 102, 104]
}
},
{…}{10 keys
"id": "jk0014",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Free mini-course",
"align": "center",
"colour": "ink-strong"
},
"at": [15, 20, 42, 44],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
}
},
{…}{11 keys
"id": "jk0015",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://listtolaunch.jennakutcher.com/challenge">My 5-Day FREE Email List Building Mini-Course</a>",
"align": "center",
"colour": "ink-strong"
},
"at": [14, 20, 45, 51],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "2xl",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk0016",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Looking For More? I Got You.",
"align": "center",
"colour": "ink-strong"
},
"at": [6, 20, 58, 61],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "3xl",
"leading": "1.1",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#6579be"
},
{…}{12 keys
"id": "jk0017",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Goal-Setting Freebies",
"link": {…}{2 keys
"href": "https://jennakutcher.com/goaldiggerplanner",
"target": "_blank"
},
"fill": "tertiary",
"align": "center",
"width": "auto"
},
"at": [4, 8, 61, 64],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "2xl",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#6579be",
"underline": false
},
{…}{12 keys
"id": "jk0018",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "List-Building Freebies",
"link": {…}{2 keys
"href": "https://listtolaunch.jennakutcher.com/freebies",
"target": "_blank"
},
"fill": "tertiary",
"align": "center",
"width": "auto"
},
"at": [9, 13, 61, 64],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "2xl",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#6579be",
"underline": false
},
{…}{12 keys
"id": "jk0019",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Podcasting Freebies",
"link": {…}{2 keys
"href": "https://thepodcastlab.jennakutcher.com/freebies",
"target": "_blank"
},
"fill": "tertiary",
"align": "center",
"width": "auto"
},
"at": [14, 18, 61, 64],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "2xl",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#6579be",
"underline": false
},
{…}{12 keys
"id": "jk001a",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Pinterest Freebies",
"link": {…}{2 keys
"href": "https://thepinterestlab.jennakutcher.com/freebies",
"target": "_blank"
},
"fill": "tertiary",
"align": "center",
"width": "auto"
},
"at": [19, 23, 61, 64],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "2xl",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#6579be",
"underline": false
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk000v
text.eyebrow
subhead [8, 18, 3, 5]
500×61px
3×1
stretch
mono · normal · lg · lh 1.5 · ls 0.15em · uppercase #6579be Free downloads to elevate your game. ink
jk000w
text.title
headline [4, 22, 5, 10]
900×152px
4×1
stretch
display · light · 5xl · lh 1.2 · ls 0.025em · uppercase #6579be Freebies ink
jk000x
image.plain
media [5, 13, 12, 26]
400×426px
2×2
stretch
layout default freebie-success 12173e1ec9d6317c.jpg · image/jpeg
jkp000
divider.line
[13, 21, 12, 26]
400×426px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile
jkp001
divider.line
[15, 20, 14, 16]
250×61px
1×1
stretch
layout default line rule panel #f2dc53 float z=-1 mobile
jk000y
text.eyebrow
subhead [15, 20, 14, 16]
250×61px
3×1
stretch
body · bold · sm · lh 1.8 · ls 0.15em · uppercase ink-strong Free worksheet
jk000z
text.subheading
body [14, 20, 17, 23]
300×182px
3×1
stretch
body · normal · 2xl · lh 1.4 · ls normal ink-strong Write Your Own Definition of Success (and Build an Action Plan for Living It … underline
jkp002
divider.line
[5, 13, 26, 40]
400×426px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile
jk0010
image.plain
media [13, 21, 26, 40]
400×426px
2×2
stretch
layout default freebie-podcast 0c7ddcb2bf9881c6.jpg · image/jpeg
jkp003
divider.line
[7, 12, 28, 30]
250×61px
1×1
stretch
layout default line rule panel #6579be float z=-1 mobile
jk0011
text.eyebrow
subhead [7, 12, 28, 30]
250×61px
3×1
stretch
body · bold · sm · lh 1.8 · ls 0.15em · uppercase #ffffff Free download ink
jk0012
text.subheading
body [6, 12, 31, 37]
300×182px
3×1
stretch
body · normal · 2xl · lh 1.4 · ls normal ink-strong How to Start a Podcast from Scratch (in 3 Easy Steps!) underline
jk0013
image.plain
media [5, 13, 40, 54]
400×426px
2×2
stretch
layout default freebie-list 49052507ecd04ad2.jpg · image/jpeg
jkp004
divider.line
[13, 21, 40, 54]
400×426px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile
jkp005
divider.line
[15, 20, 42, 44]
250×61px
1×1
stretch
layout default line rule panel #eec3e5 float z=-1 mobile
jk0014
text.eyebrow
subhead [15, 20, 42, 44]
250×61px
3×1
stretch
body · bold · sm · lh 1.8 · ls 0.15em · uppercase ink-strong Free mini-course
jk0015
text.subheading
body [14, 20, 45, 51]
300×182px
3×1
stretch
body · normal · 2xl · lh 1.4 · ls normal ink-strong My 5-Day FREE Email List Building Mini-Course underline
jk0016
text.heading
headline [6, 20, 58, 61]
700×91px
4×1
stretch
display · normal · 3xl · lh 1.1 · ls normal #6579be Looking For More? I Got You. ink
jk0017
button.quiet
action [4, 8, 61, 64]
200×91px
2×1
stretch
body · normal · 2xl · lh 1.4 · ls normal #6579be Goal-Setting Freebies ink underline
jk0018
button.quiet
action [9, 13, 61, 64]
200×91px
2×1
stretch
body · normal · 2xl · lh 1.4 · ls normal #6579be List-Building Freebies ink underline
jk0019
button.quiet
action [14, 18, 61, 64]
200×91px
2×1
stretch
body · normal · 2xl · lh 1.4 · ls normal #6579be Podcasting Freebies ink underline
jk001a
button.quiet
action [19, 23, 61, 64]
200×91px
2×1
stretch
body · normal · 2xl · lh 1.4 · ls normal #6579be Pinterest Freebies ink underline

Element-scope extensions in this band: node.typography, node.ink, node.panel, node.float, node.z, node.mobile, node.underline

Render against origin

The build runs 53px long over 2,018px of origin — the closest proportional match of any long band on the page.

This is where 20 bands became 19
"Looking For More? I Got You." is a band a reader would name, on the same pink ground as the freebies above it. It has no ground change to divide it, so it lives inside jk001b as four more placed children. Every other band on the page maps one-to-one to a section; this one is the exception, and it is the whole of the 20 → 19 discrepancy.
The white cards are panels, not sections
The origin is a checkerboard of white card faces on a pink ground. Read as columns of content on the band's own ground they render — they just say something else, and the tell is contrast: text that comes out white-on-white means the colour is right and the ground is missing. node.panel{ fill, radius? } — paints the card face. The registry has no panel primitive, which is the single largest structural gap this page found.
06

Podcast stats — 115M / 900+ / 12,000+

features features.stats jk001j
Origin y
5197–6072
Origin height
875px
Build height
875px
Δ
0px
Ground
secondary
space
0 rows
Elements
2
Origin — Podcast stats — 115M / 900+ / 12,000+
ORIGIN · y 5197–6072 · 875px · periwinkle #6579be, photograph below
Build — Podcast stats — 115M / 900+ / 12,000+
BUILD · y 5715–6590 · 875px · jk001j

What this band is

Three figures for the podcast — 115 million downloads, 900+ shows, 12,000+ five-star reviews — over a periwinkle ground with a photograph below them. Crucially, the origin sets them small: 20px mono, three lines, one text node, left-aligned. The size of an eyebrow, not of a statistic.

Why this category and layout

features.stats by arrangement. But arrangement alone gets this band wrong, and did: an earlier round gave it three oversize numerals spread across the grid, which is what a stat block looks like and not what this band is. A band of three numbers is a stat block only if the origin sets the numbers like stats.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 2 elements the table below summarises.

{…}{7 keys
"id": "jk001j",
"type": "section",
"layout": "features.stats",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{2 keys
"background": "secondary",
"image": {…}{2 keys
"src": null,
"alt": ""
}
},
"kids": […][2 items
{…}{10 keys
"id": "jk001c",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "115 million downloads<br>900+ shows<br>12,000+ 5 star reviews",
"align": "left",
"colour": "ink-body"
},
"at": [1, 14, 3, 8],
"slot": "stat",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "lg",
"leading": "1.8",
"tracking": "0.05em",
"transform": "uppercase"
}
},
{…}{9 keys
"id": "jk001i",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:podcast",
"alt": "Jenna Kutcher in a yellow dress wearing headphones"
}
},
"at": [1, 25, 11, 29],
"slot": "media"
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk001c
text.eyebrow
stat [1, 14, 3, 8]
650×152px
3×1
stretch
mono · normal · lg · lh 1.8 · ls 0.05em · uppercase ink-body 115 million downloads / 900+ shows / 12,000+ 5 star reviews
jk001i
image.plain
media [1, 25, 11, 29]
1200×547px
2×2
stretch
layout default podcast 07b5256e078739a7.jpg · image/jpeg

Element-scope extensions in this band: node.typography

Render against origin

875px against 875px — exact. The only band on the page that lands on the origin's height to the pixel, and it got there by being rebuilt from the origin's own type and geometry rather than from the layout's defaults.

It is also the band that proved the exact match is a property of the grid rather than of this section: turning the maxWidth cap off for one round took the content column from 1200px to 1480px and the row from 30.4px to 31.8px, and this band went to +40 without a single field on it changing.

Read type.size before naming a layout
If the biggest thing in a band is set at body size, the band is not about it. This is the band that proved it — the fix was to stop asking what the layout is called and start reading what the origin sets its text at.
Matching height is not matching band
Put the pair side by side and the thing the ±0px never told you is immediately visible: the origin's photograph is full-bleed and the build's is inset. jk001i is placed at [1, 25, 11, 29] — every one of the 24 columns, and still only 1200px against an origin of 1512px. Nothing placed on this grid can escape the content column, so full bleed is not a placement this document can express.

Uncapping the grid does not fix it, it only moves the number: the photograph becomes 1480px at this viewport and 1888px at 1920, overshooting instead of falling short. A section background image is genuinely full-bleed; an element in the grid never is, at any cap. The real gap is an image that must bleed and occupy only part of the band's height.
07

Podcast — two columns + episode list

features features.list jk0023
Origin y
6072–7061
Origin height
989px
Build height
1027px
Δ
+38px
Ground
tertiary
space
1 rows · 30px
Elements
19
Origin — Podcast — two columns + episode list
ORIGIN · y 6072–7061 · 989px · pink→blue gradient
Build — Podcast — two columns + episode list
BUILD · y 6590–7617 · 1027px · jk0023

What this band is

The Goal Digger podcast: a headline and paragraph in the left column, a Click here to tune in link, and a numbered list of the most popular episodes — 750, 752 and the rest — each with its title. The ground is not a colour but a gradient running pink to blue.

Why this category and layout

features.list — a heading with a repeated set of items under it. The episode list traces one for one.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 19 elements the table below summarises.

{…}{8 keys
"id": "jk0023",
"type": "section",
"layout": "features.list",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "tertiary",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 1
},
"kids": […][19 items
{…}{10 keys
"id": "jk001k",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The #1 marketing and business podcast serving up the BEST mini-marketing trainings and can’t-stop-listening interviews with the most inspiring, people from around the world.",
"align": "left",
"colour": "ink-strong"
},
"at": [1, 13, 3, 11],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "medium",
"size": "2xl",
"leading": "1.5",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{9 keys
"id": "jk001l",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>With 115+ million downloads, 900+ episodes, 12,000+ five-star reviews, The Goal Digger Podcast has become a go-to library for entrepreneurs at every stage. Want to learn how to start your business, grow your influence, or straight up figure out what you want to do with your life? The Goal Digger Podcast is ready for your binge-listening pleasure! All are welcome.</p>",
"align": "left",
"colour": "ink-body"
},
"at": [15, 25, 3, 14],
"slot": "body"
},
{…}{11 keys
"id": "jk001m",
"type": "button",
"layout": "button.pill",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-full px-7 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Click here to tune in →",
"link": {…}{2 keys
"href": "https://jennakutcherblog.com/goal-digger-podcast/",
"target": "_blank"
},
"fill": "canvas",
"align": "start",
"width": "auto"
},
"at": [1, 9, 12, 14],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk001n",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Most popular episodes",
"align": "left",
"colour": "ink-body"
},
"at": [1, 9, 16, 17],
"slot": "subhead",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "base",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#111111"
},
{…}{11 keys
"id": "jk001o",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>750</p>",
"align": "left",
"colour": "ink-muted"
},
"at": [1, 4, 18, 19],
"slot": "label",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.6",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk001p",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/10biztools/">10 Business Tools I Can't Live Without</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [4, 22, 18, 20],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk001q",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [1, 22, 20, 21],
"slot": "divider"
},
{…}{11 keys
"id": "jk001r",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>752</p>",
"align": "left",
"colour": "ink-muted"
},
"at": [1, 4, 21, 22],
"slot": "label",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.6",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk001s",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/120x/">120X Your Content’s Lifespan in Just an Hour per Week</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [4, 22, 21, 23],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk001t",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [1, 22, 23, 24],
"slot": "divider"
},
{…}{11 keys
"id": "jk001u",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>718</p>",
"align": "left",
"colour": "ink-muted"
},
"at": [1, 4, 24, 25],
"slot": "label",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.6",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk001v",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/podcastmonetization/">How to ACTUALLY Make Money As A Podcaster</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [4, 22, 24, 26],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk001w",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [1, 22, 26, 27],
"slot": "divider"
},
{…}{11 keys
"id": "jk001x",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>772</p>",
"align": "left",
"colour": "ink-muted"
},
"at": [1, 4, 27, 28],
"slot": "label",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.6",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk001y",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/email2024/">Why You Shouldn't Wait to Start Your Email List</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [4, 22, 27, 29],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk001z",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [1, 22, 29, 30],
"slot": "divider"
},
{…}{11 keys
"id": "jk0020",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>720</p>",
"align": "left",
"colour": "ink-muted"
},
"at": [1, 4, 30, 31],
"slot": "label",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.6",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk0021",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/5thingsig/">5 Things That Work On Instagram Right Now</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [4, 22, 30, 32],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk0022",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [1, 22, 32, 33],
"slot": "divider"
}
],
"gradient": {…}{2 keys
"angle": "300deg",
"stops": ["#f5f195", "#cee8f3", "#eec3e5"]
}
}

Section-scope extensions in use: section.gradient

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk001k
text.heading
headline [1, 13, 3, 11]
600×243px
4×1
stretch
display · medium · 2xl · lh 1.5 · ls normal ink-strong The #1 marketing and business podcast serving up the BEST mini-marketing trai…
jk001l
text.body
body [15, 25, 3, 14]
500×334px
3×1
stretch
layout default ink-body With 115+ million downloads, 900+ episodes, 12,000+ five-star reviews, The Go…
jk001m
button.pill
action [1, 9, 12, 14]
400×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.15em · uppercase #6579be Click here to tune in → ink
jk001n
text.eyebrow
subhead [1, 9, 16, 17]
400×30px
3×1
stretch
mono · normal · base · lh 1.8 · ls 0.15em · uppercase #111111 Most popular episodes ink
jk001o
text.small
label [1, 4, 18, 19]
150×30px
3×1
stretch
body · bold · base · lh 1.6 · ls 0.05em · uppercase #6579be 750 ink
jk001p
text.subheading
body [4, 22, 18, 20]
900×61px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong 10 Business Tools I Can't Live Without underline
jk001q
divider.line
divider [1, 22, 20, 21]
1050×30px
1×1
stretch
layout default line rule
jk001r
text.small
label [1, 4, 21, 22]
150×30px
3×1
stretch
body · bold · base · lh 1.6 · ls 0.05em · uppercase #6579be 752 ink
jk001s
text.subheading
body [4, 22, 21, 23]
900×61px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong 120X Your Content’s Lifespan in Just an Hour per Week underline
jk001t
divider.line
divider [1, 22, 23, 24]
1050×30px
1×1
stretch
layout default line rule
jk001u
text.small
label [1, 4, 24, 25]
150×30px
3×1
stretch
body · bold · base · lh 1.6 · ls 0.05em · uppercase #6579be 718 ink
jk001v
text.subheading
body [4, 22, 24, 26]
900×61px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong How to ACTUALLY Make Money As A Podcaster underline
jk001w
divider.line
divider [1, 22, 26, 27]
1050×30px
1×1
stretch
layout default line rule
jk001x
text.small
label [1, 4, 27, 28]
150×30px
3×1
stretch
body · bold · base · lh 1.6 · ls 0.05em · uppercase #6579be 772 ink
jk001y
text.subheading
body [4, 22, 27, 29]
900×61px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong Why You Shouldn't Wait to Start Your Email List underline
jk001z
divider.line
divider [1, 22, 29, 30]
1050×30px
1×1
stretch
layout default line rule
jk0020
text.small
label [1, 4, 30, 31]
150×30px
3×1
stretch
body · bold · base · lh 1.6 · ls 0.05em · uppercase #6579be 720 ink
jk0021
text.subheading
body [4, 22, 30, 32]
900×61px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong 5 Things That Work On Instagram Right Now underline
jk0022
divider.line
divider [1, 22, 32, 33]
1050×30px
1×1
stretch
layout default line rule

Element-scope extensions in this band: node.typography, node.ink, node.underline

Render against origin

The build runs 38px long. The gradient is the origin's own declaration rather than an approximation to a flat fill.

A ground that is not a colour
A section background names a surface role, and a role is one value. This band's ground is a two-stop gradient, carried by section.gradient{ angle, stops[] }. Rendered as the nearest flat fill it reads as a different band.
08

Blog — NOT YOUR AVERAGE BIZ BLOG

features features.list jk002l
Origin y
7061–8374
Origin height
1313px
Build height
1148px
Δ
-165px
Ground
secondary
space
3 rows · 91px
Elements
17
Origin — Blog — NOT YOUR AVERAGE BIZ BLOG
ORIGIN · y 7061–8374 · 1313px · periwinkle #6579be
Build — Blog — NOT YOUR AVERAGE BIZ BLOG
BUILD · y 7617–8765 · 1148px · jk002l

What this band is

NOT YOUR AVERAGE BIZ BLOG in heavy condensed caps, then five posts, each a small category eyebrow — Personal, Health, Beauty, Productivity — above its title, with a thumbnail. An Explore the posts link closes the band.

Why this category and layout

features.list again, for the same reason: one heading, a repeated item shape beneath it. Seventeen children, of which fifteen are the list.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 17 elements the table below summarises.

{…}{7 keys
"id": "jk002l",
"type": "section",
"layout": "features.list",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "secondary",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 3
},
"kids": […][17 items
{…}{11 keys
"id": "jk0024",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Not your average biz blog",
"align": "center",
"colour": "ink-strong"
},
"at": [3, 22, 3, 9],
"slot": "headline",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "5xl",
"leading": "1",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#eec3e5"
},
{…}{9 keys
"id": "jk0025",
"type": "image",
"layout": "image.rounded",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full overflow-hidden rounded-xl",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:blog-viral",
"alt": "Jenna Kutcher and her husband on a beach"
}
},
"at": [2, 11, 10, 26],
"slot": "media"
},
{…}{11 keys
"id": "jk0026",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Personal",
"align": "left",
"colour": "ink-body"
},
"at": [2, 8, 27, 28],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"ink": "#eeb19a"
},
{…}{11 keys
"id": "jk0027",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="http://jennakutcherblog.com/curvy-woman-opens-up-about-having-mr-six-pack-as-her-husband-inspiring-thousands/">That Time I Went Viral for Being Curvy (with Mr. Six Pack)</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [2, 11, 28, 32],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk0028",
"type": "image",
"layout": "image.circle",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "div",
"class": "absolute inset-0 flex items-center justify-center",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "aspect-square h-full w-auto rounded-full object-cover"
}
]
}
]
},
"min": [2, 2],
"derive": "intrinsic",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:blog-health",
"alt": "Jenna Kutcher in a red top at a desk"
}
},
"at": [12, 15, 10, 13],
"slot": "media"
},
{…}{11 keys
"id": "jk0029",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Health",
"align": "left",
"colour": "ink-body"
},
"at": [15, 25, 10, 11],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"ink": "#f2dc53"
},
{…}{11 keys
"id": "jk002a",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/my-current-health-routine-and-whats-next/">My Current Health Routine (and What’s Next!)</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [15, 25, 11, 14],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk002b",
"type": "image",
"layout": "image.circle",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "div",
"class": "absolute inset-0 flex items-center justify-center",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "aspect-square h-full w-auto rounded-full object-cover"
}
]
}
]
},
"min": [2, 2],
"derive": "intrinsic",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:blog-beauty",
"alt": "Skincare bottles beside a basin"
}
},
"at": [12, 15, 14, 17],
"slot": "media"
},
{…}{11 keys
"id": "jk002c",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Beauty",
"align": "left",
"colour": "ink-body"
},
"at": [15, 25, 14, 15],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"ink": "#eeb19a"
},
{…}{11 keys
"id": "jk002d",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/8-ways-i-transformed-my-skin-and-how-much-it-cost/">8 Ways I Transformed My Skin and How Much it Cost</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [15, 25, 15, 18],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk002e",
"type": "image",
"layout": "image.circle",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "div",
"class": "absolute inset-0 flex items-center justify-center",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "aspect-square h-full w-auto rounded-full object-cover"
}
]
}
]
},
"min": [2, 2],
"derive": "intrinsic",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:blog-ai",
"alt": "Printed photographs laid out on a floor"
}
},
"at": [12, 15, 18, 21],
"slot": "media"
},
{…}{11 keys
"id": "jk002f",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Productivity",
"align": "left",
"colour": "ink-body"
},
"at": [15, 25, 18, 19],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"ink": "#eec3e5"
},
{…}{11 keys
"id": "jk002g",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/ai-business-strategy-for-beginners/">A Beginner’s Guide to Building an AI Business Strategy</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [15, 25, 19, 22],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{9 keys
"id": "jk002h",
"type": "image",
"layout": "image.circle",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "div",
"class": "absolute inset-0 flex items-center justify-center",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "aspect-square h-full w-auto rounded-full object-cover"
}
]
}
]
},
"min": [2, 2],
"derive": "intrinsic",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:blog-pinterest",
"alt": "Jenna Kutcher pinning photographs to a wall"
}
},
"at": [12, 15, 22, 25],
"slot": "media"
},
{…}{11 keys
"id": "jk002i",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Business",
"align": "left",
"colour": "ink-body"
},
"at": [15, 25, 22, 23],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"ink": "#f2dc53"
},
{…}{11 keys
"id": "jk002j",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcherblog.com/5-creative-ways-to-use-pinterest-for-your-business/">5 Creative Ways to Use Pinterest for Your Business</a>",
"align": "left",
"colour": "ink-strong"
},
"at": [15, 25, 23, 26],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "2xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk002k",
"type": "button",
"layout": "button.pill",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-full px-7 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Explore the posts →",
"link": {…}{2 keys
"href": "https://jennakutcherblog.com/",
"target": "_blank"
},
"fill": "tertiary",
"align": "center",
"width": "auto"
},
"at": [9, 17, 33, 35],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#6579be"
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk0024
text.title
headline [3, 22, 3, 9]
950×182px
4×1
stretch
condensed · black · 5xl · lh 1 · ls 0.05em · uppercase #eec3e5 Not your average biz blog ink
jk0025
image.rounded
media [2, 11, 10, 26]
450×486px
2×2
stretch
layout default blog-viral 20018221f8f505e6.jpg · image/jpeg
jk0026
text.eyebrow
subhead [2, 8, 27, 28]
300×30px
3×1
stretch
body · bold · sm · lh 1.6 · ls 0.1em · uppercase #eeb19a Personal ink
jk0027
text.subheading
body [2, 11, 28, 32]
450×122px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong That Time I Went Viral for Being Curvy (with Mr. Six Pack) underline
jk0028
image.circle
media [12, 15, 10, 13]
150×91px
2×2
intrinsic
layout default blog-health 1380e0a3f832adb8.jpg · image/jpeg
jk0029
text.eyebrow
subhead [15, 25, 10, 11]
500×30px
3×1
stretch
body · bold · lg · lh 1.6 · ls 0.1em · uppercase #f2dc53 Health ink
jk002a
text.subheading
body [15, 25, 11, 14]
500×91px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong My Current Health Routine (and What’s Next!) underline
jk002b
image.circle
media [12, 15, 14, 17]
150×91px
2×2
intrinsic
layout default blog-beauty 873fba693ea2bbca.jpg · image/jpeg
jk002c
text.eyebrow
subhead [15, 25, 14, 15]
500×30px
3×1
stretch
body · bold · lg · lh 1.6 · ls 0.1em · uppercase #eeb19a Beauty ink
jk002d
text.subheading
body [15, 25, 15, 18]
500×91px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong 8 Ways I Transformed My Skin and How Much it Cost underline
jk002e
image.circle
media [12, 15, 18, 21]
150×91px
2×2
intrinsic
layout default blog-ai b3302070d9394783.jpg · image/jpeg
jk002f
text.eyebrow
subhead [15, 25, 18, 19]
500×30px
3×1
stretch
body · bold · sm · lh 1.6 · ls 0.1em · uppercase #eec3e5 Productivity ink
jk002g
text.subheading
body [15, 25, 19, 22]
500×91px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong A Beginner’s Guide to Building an AI Business Strategy underline
jk002h
image.circle
media [12, 15, 22, 25]
150×91px
2×2
intrinsic
layout default blog-pinterest d5f5f60cababb8ea.jpg · image/jpeg
jk002i
text.eyebrow
subhead [15, 25, 22, 23]
500×30px
3×1
stretch
body · bold · sm · lh 1.6 · ls 0.1em · uppercase #f2dc53 Business ink
jk002j
text.subheading
body [15, 25, 23, 26]
500×91px
3×1
stretch
display · normal · 2xl · lh 1.2 · ls normal ink-strong 5 Creative Ways to Use Pinterest for Your Business underline
jk002k
button.pill
action [9, 17, 33, 35]
400×61px
2×1
stretch
body · bold · lg · lh 1.8 · ls 0.15em · uppercase #6579be Explore the posts → ink

Element-scope extensions in this band: node.typography, node.ink, node.underline

Render against origin

The build is 165px short. Every post title and category traces; the shortfall is the origin's generous leading between items.

09

Book — Worldwide Bestseller

features features.split jk002p
Origin y
8374–9140
Origin height
766px
Build height
905px
Δ
+139px
Ground
primary + photo
space
4 rows · 122px
Elements
4
Origin — Book — Worldwide Bestseller
ORIGIN · y 8374–9140 · 766px · orange photograph
Build — Book — Worldwide Bestseller
BUILD · y 8766–9671 · 905px · jk002p

What this band is

The book band. Get My Heartfelt Worldwide Bestseller, How Are You, Really? over an orange photographic ground, a paragraph, and an Order today! action.

Why this category and layout

features.split — the book beside the words.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 4 elements the table below summarises.

{…}{8 keys
"id": "jk002p",
"type": "section",
"layout": "features.split",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "primary",
"image": {…}{2 keys
"src": "asset:book",
"alt": "Jenna Kutcher holding her book against an orange wall"
},
"space": 4
},
"kids": […][4 items
{…}{9 keys
"id": "jk002m",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Get My Heartfelt Worldwide Bestseller, How Are You,",
"align": "left",
"colour": "ink-strong"
},
"at": [2, 15, 4, 15],
"slot": "headline"
},
{…}{10 keys
"id": "jk002n",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Forget hustle harder. Want to build a vision for your life that's unapologetically true to who you are and what you *actually* want? Here's how you start.</p>",
"align": "left",
"colour": "ink-body"
},
"at": [2, 13, 16, 23],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "xl",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{10 keys
"id": "jk002o",
"type": "button",
"layout": "button.pill",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-full px-7 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Order today!",
"link": {…}{2 keys
"href": "https://jennakutcher.com/book",
"target": "_blank"
},
"fill": "canvas",
"align": "start",
"width": "auto"
},
"at": [15, 21, 24, 26],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.2",
"tracking": "0.1em",
"transform": "uppercase"
}
},
{…}{9 keys
"id": "jkl000",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:really",
"alt": "Really, hand-lettered"
}
},
"at": [11, 16, 9, 13],
"fit": "contain"
}
],
"scrim": false
}

Section-scope extensions in use: section.scrim

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk002m
text.title
headline [2, 15, 4, 15]
650×334px
4×1
stretch
layout default ink-strong Get My Heartfelt Worldwide Bestseller, How Are You,
jk002n
text.body
body [2, 13, 16, 23]
550×213px
3×1
stretch
body · normal · xl · lh 1.8 · ls normal ink-body Forget hustle harder. Want to build a vision for your life that's unapologeti…
jk002o
button.pill
action [15, 21, 24, 26]
300×61px
2×1
stretch
body · bold · base · lh 1.2 · ls 0.1em · uppercase Order today!
jkl000
image.plain
[11, 16, 9, 13]
250×122px
2×2
stretch
layout default really really1.png · image/png fit=contain

Element-scope extensions in this band: node.typography, node.fit

Render against origin

The build runs 139px taller.

The last word is a drawing, not type
The headline reads "…How Are You, Really?" on screen and ends at the comma in outline.json. The outline is right: really1.png is hand-lettered artwork positioned over the type. An earlier extraction read the word off the screenshot and typed it into the headline — the right instinct applied to the wrong thing, because the document then set in a serif what the origin drew by hand, and nothing in the pipeline could say so. It is now placed as the image it is.
10

Course 01 — The Content Lab

features features.split jk002x
Origin y
9140–10178
Origin height
1038px
Build height
541px
Δ
-497px
Ground
canvas + photo
space
0 rows
Elements
8
Origin — Course 01 — The Content Lab
ORIGIN · y 9140–10178 · 1038px · photograph, white card
Build — Course 01 — The Content Lab
BUILD · y 9671–10212 · 541px · jk002x

What this band is

The first of four course cards. A mono eyebrow reading THE JK COURSE LIBRARY, a large numeral 01, a tagline, the course name The Content Lab, a paragraph, a More info action, and a coloured folder tab. Card 01 sits over its photograph; the other three sit on white.

Why this category and layout

features.split, on a canvas ground. All four cards share one shape, so they share one layout and differ only in content.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 8 elements the table below summarises.

{…}{8 keys
"id": "jk002x",
"type": "section",
"layout": "features.split",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{2 keys
"background": "canvas",
"image": {…}{2 keys
"src": "asset:courses-ground",
"alt": "Jenna Kutcher sitting on the floor with a laptop and printed photographs"
}
},
"kids": […][8 items
{…}{11 keys
"id": "jk002q",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The JK Course Library",
"align": "right",
"colour": "ink-strong"
},
"at": [12, 25, 2, 3],
"slot": "subhead",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#ffffff"
},
{…}{13 keys
"id": "jk002r",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "primary"
},
"at": [5, 25, 2, 4],
"slot": "divider",
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#eb6c2f"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 5]
}
},
{…}{11 keys
"id": "jk002s",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "01",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 9, 5, 8],
"slot": "label",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "3xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#eb6c2f"
},
{…}{11 keys
"id": "jk002t",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Level up your content game:",
"align": "left",
"colour": "ink-body"
},
"at": [9, 24, 5, 6],
"slot": "subhead",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "lg",
"leading": "1.3",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#222222"
},
{…}{10 keys
"id": "jk002u",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The Content Lab",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 22, 8, 11],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "4xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{11 keys
"id": "jk002v",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Snag my exact 5-step plan to learn how to intentionally create one piece of content and repurpose and promote it 10 different ways to get results for the next 90 days!</p>",
"align": "left",
"colour": "ink-body"
},
"at": [5, 19, 11, 16],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "xl",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#222222"
},
{…}{11 keys
"id": "jk002w",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "More info",
"link": {…}{2 keys
"href": "http://thecontentlab.jennakutcher.com/",
"target": "_blank"
},
"fill": "canvas",
"align": "end",
"width": "auto"
},
"at": [18, 24, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.2",
"tracking": "0.15em",
"transform": "uppercase"
},
"underline": false
},
{…}{12 keys
"id": "jkc000",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [5, 25, 4, 18],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 31]
}
}
],
"scrim": false
}

Section-scope extensions in use: section.scrim

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk002q
text.eyebrow
subhead [12, 25, 2, 3]
650×30px
3×1
stretch
condensed · black · xl · lh 1.2 · ls 0.05em · uppercase #ffffff The JK Course Library ink
jk002r
divider.line
divider [5, 25, 2, 4]
1000×61px
1×1
stretch
layout default primary rule panel #eb6c2f float z=-1 mobile
jk002s
text.title
label [5, 9, 5, 8]
200×91px
4×1
stretch
condensed · black · 3xl · lh 1.2 · ls 0.05em · uppercase #eb6c2f 01 ink
jk002t
text.eyebrow
subhead [9, 24, 5, 6]
750×30px
3×1
stretch
mono · normal · lg · lh 1.3 · ls 0.05em · uppercase #222222 Level up your content game: ink
jk002u
text.heading
headline [5, 22, 8, 11]
850×91px
4×1
stretch
display · normal · 4xl · lh 1.2 · ls normal ink-strong The Content Lab
jk002v
text.body
body [5, 19, 11, 16]
700×152px
3×1
stretch
body · normal · xl · lh 1.8 · ls normal #222222 Snag my exact 5-step plan to learn how to intentionally create one piece of c… ink
jk002w
button.quiet
action [18, 24, 16, 18]
300×61px
2×1
stretch
body · bold · sm · lh 1.2 · ls 0.15em · uppercase More info underline
jkc000
divider.line
[5, 25, 4, 18]
1000×426px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile

Element-scope extensions in this band: node.typography, node.ink, node.panel, node.float, node.z, node.mobile, node.underline

Render against origin

The build is 497px short — the largest shortfall on the page, and not a fault. See the flag.

These four bands are caught mid-animation
The cards are scroll-pinned: they slide over one pinned photograph as the page moves. resting.png is a single full-page shot with no scroll position and no elapsed time, so it linearises the stack — card 01 over its photograph, cards 02–04 on white with several hundred pixels of empty band around them. That dead space is the animation, not padding. The four bands are 365–497px short in the build because the build does not reproduce it, which is the correct decision and the reason 1,724px of the page's 1,239px total height difference sits right here.
11

Course 02 — The Pinterest Lab

features features.split jk0035
Origin y
10178–11160
Origin height
982px
Build height
561px
Δ
-421px
Ground
canvas
space
0 rows
Elements
8
Origin — Course 02 — The Pinterest Lab
ORIGIN · y 10178–11160 · 982px · white
Build — Course 02 — The Pinterest Lab
BUILD · y 10212–10773 · 561px · jk0035

What this band is

The Pinterest Lab — number 02, tagline Make Pinterest your secret weapon. Identical card shape to 01, on white.

Why this category and layout

The same features.split, the same eight children in the same slots.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 8 elements the table below summarises.

{…}{7 keys
"id": "jk0035",
"type": "section",
"layout": "features.split",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{2 keys
"background": "canvas",
"image": {…}{2 keys
"src": null,
"alt": ""
}
},
"kids": […][8 items
{…}{11 keys
"id": "jk002y",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The JK Course Library",
"align": "right",
"colour": "ink-strong"
},
"at": [12, 25, 2, 3],
"slot": "subhead",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#ffffff"
},
{…}{13 keys
"id": "jk002z",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "secondary"
},
"at": [5, 25, 2, 4],
"slot": "divider",
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#6579be"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 5]
}
},
{…}{11 keys
"id": "jk0030",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "02",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 9, 5, 8],
"slot": "label",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "3xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk0031",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Make Pinterest your secret weapon",
"align": "left",
"colour": "ink-body"
},
"at": [9, 24, 5, 6],
"slot": "subhead",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "lg",
"leading": "1.3",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#222222"
},
{…}{10 keys
"id": "jk0032",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The Pinterest Lab",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 22, 8, 11],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "4xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{11 keys
"id": "jk0033",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Ready to leverage the internet’s favorite inspo board to be your #1 driver of web traffic? Get my 4-step, no-fluff process to drive a waterfall of traffic to your website with under 1 hour of work per week.</p>",
"align": "left",
"colour": "ink-body"
},
"at": [5, 19, 11, 16],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "xl",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#222222"
},
{…}{11 keys
"id": "jk0034",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "More info",
"link": {…}{2 keys
"href": "https://thepinterestlab.jennakutcher.com/",
"target": "_blank"
},
"fill": "canvas",
"align": "end",
"width": "auto"
},
"at": [18, 24, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.2",
"tracking": "0.15em",
"transform": "uppercase"
},
"underline": false
},
{…}{12 keys
"id": "jkc001",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [5, 25, 4, 18],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 31]
}
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk002y
text.eyebrow
subhead [12, 25, 2, 3]
650×30px
3×1
stretch
condensed · black · xl · lh 1.2 · ls 0.05em · uppercase #ffffff The JK Course Library ink
jk002z
divider.line
divider [5, 25, 2, 4]
1000×61px
1×1
stretch
layout default secondary rule panel #6579be float z=-1 mobile
jk0030
text.title
label [5, 9, 5, 8]
200×91px
4×1
stretch
condensed · black · 3xl · lh 1.2 · ls 0.05em · uppercase #6579be 02 ink
jk0031
text.eyebrow
subhead [9, 24, 5, 6]
750×30px
3×1
stretch
mono · normal · lg · lh 1.3 · ls 0.05em · uppercase #222222 Make Pinterest your secret weapon ink
jk0032
text.heading
headline [5, 22, 8, 11]
850×91px
4×1
stretch
display · normal · 4xl · lh 1.2 · ls normal ink-strong The Pinterest Lab
jk0033
text.body
body [5, 19, 11, 16]
700×152px
3×1
stretch
body · normal · xl · lh 1.8 · ls normal #222222 Ready to leverage the internet’s favorite inspo board to be your #1 driver of… ink
jk0034
button.quiet
action [18, 24, 16, 18]
300×61px
2×1
stretch
body · bold · sm · lh 1.2 · ls 0.15em · uppercase More info underline
jkc001
divider.line
[5, 25, 4, 18]
1000×426px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile

Element-scope extensions in this band: node.typography, node.ink, node.panel, node.float, node.z, node.mobile, node.underline

Render against origin

421px short, for the same scroll-pinning reason as 01.

12

Course 03 — The Podcast Lab

features features.split jk003d
Origin y
11160–12142
Origin height
982px
Build height
541px
Δ
-441px
Ground
canvas
space
0 rows
Elements
8
Origin — Course 03 — The Podcast Lab
ORIGIN · y 11160–12142 · 982px · white
Build — Course 03 — The Podcast Lab
BUILD · y 10773–11314 · 541px · jk003d

What this band is

The Podcast Lab — number 03, Build your podcast empire.

Why this category and layout

The same layout again.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 8 elements the table below summarises.

{…}{7 keys
"id": "jk003d",
"type": "section",
"layout": "features.split",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{2 keys
"background": "canvas",
"image": {…}{2 keys
"src": null,
"alt": ""
}
},
"kids": […][8 items
{…}{11 keys
"id": "jk0036",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The JK Course Library",
"align": "right",
"colour": "ink-strong"
},
"at": [12, 25, 2, 3],
"slot": "subhead",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{13 keys
"id": "jk0037",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "tertiary"
},
"at": [5, 25, 2, 4],
"slot": "divider",
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#eec3e5"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 5]
}
},
{…}{11 keys
"id": "jk0038",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "03",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 9, 5, 8],
"slot": "label",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "3xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk0039",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Build your podcast empire",
"align": "left",
"colour": "ink-body"
},
"at": [9, 24, 5, 6],
"slot": "subhead",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "lg",
"leading": "1.3",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#222222"
},
{…}{10 keys
"id": "jk003a",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The Podcast Lab",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 22, 8, 11],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "4xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{11 keys
"id": "jk003b",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Take my easy-to-learn 5-Step system to plan, record, launch, market, and monetize your podcast in 30 Days to GROW your business (or BECOME your business!)</p>",
"align": "left",
"colour": "ink-body"
},
"at": [5, 19, 11, 16],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "xl",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#222222"
},
{…}{11 keys
"id": "jk003c",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "More info",
"link": {…}{2 keys
"href": "https://thepodcastlab.jennakutcher.com/",
"target": "_blank"
},
"fill": "canvas",
"align": "end",
"width": "auto"
},
"at": [18, 24, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.2",
"tracking": "0.15em",
"transform": "uppercase"
},
"underline": false
},
{…}{12 keys
"id": "jkc002",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [5, 25, 4, 18],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 31]
}
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk0036
text.eyebrow
subhead [12, 25, 2, 3]
650×30px
3×1
stretch
condensed · black · xl · lh 1.2 · ls 0.05em · uppercase #6579be The JK Course Library ink
jk0037
divider.line
divider [5, 25, 2, 4]
1000×61px
1×1
stretch
layout default tertiary rule panel #eec3e5 float z=-1 mobile
jk0038
text.title
label [5, 9, 5, 8]
200×91px
4×1
stretch
condensed · black · 3xl · lh 1.2 · ls 0.05em · uppercase #6579be 03 ink
jk0039
text.eyebrow
subhead [9, 24, 5, 6]
750×30px
3×1
stretch
mono · normal · lg · lh 1.3 · ls 0.05em · uppercase #222222 Build your podcast empire ink
jk003a
text.heading
headline [5, 22, 8, 11]
850×91px
4×1
stretch
display · normal · 4xl · lh 1.2 · ls normal ink-strong The Podcast Lab
jk003b
text.body
body [5, 19, 11, 16]
700×152px
3×1
stretch
body · normal · xl · lh 1.8 · ls normal #222222 Take my easy-to-learn 5-Step system to plan, record, launch, market, and mone… ink
jk003c
button.quiet
action [18, 24, 16, 18]
300×61px
2×1
stretch
body · bold · sm · lh 1.2 · ls 0.15em · uppercase More info underline
jkc002
divider.line
[5, 25, 4, 18]
1000×426px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile

Element-scope extensions in this band: node.typography, node.ink, node.panel, node.float, node.z, node.mobile, node.underline

Render against origin

441px short.

13

Course 04 — The List to Launch Lab

features features.split jk003l
Origin y
12142–13068
Origin height
926px
Build height
561px
Δ
-365px
Ground
canvas
space
0 rows
Elements
8
Origin — Course 04 — The List to Launch Lab
ORIGIN · y 12142–13068 · 926px · white
Build — Course 04 — The List to Launch Lab
BUILD · y 11314–11875 · 561px · jk003l

What this band is

The List to Launch Lab — number 04, Grow (or start) your email list. Its folder tab is the yellow one.

Why this category and layout

The same layout, closing the set.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 8 elements the table below summarises.

{…}{7 keys
"id": "jk003l",
"type": "section",
"layout": "features.split",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{2 keys
"background": "canvas",
"image": {…}{2 keys
"src": null,
"alt": ""
}
},
"kids": […][8 items
{…}{11 keys
"id": "jk003e",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The JK Course Library",
"align": "right",
"colour": "ink-strong"
},
"at": [12, 25, 2, 3],
"slot": "subhead",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{13 keys
"id": "jk003f",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "secondary"
},
"at": [5, 25, 2, 4],
"slot": "divider",
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#f2dc53"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 5]
}
},
{…}{11 keys
"id": "jk003g",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "04",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 9, 5, 8],
"slot": "label",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "3xl",
"leading": "1.2",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#6579be"
},
{…}{11 keys
"id": "jk003h",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Grow (or start) your email list",
"align": "left",
"colour": "ink-body"
},
"at": [9, 24, 5, 6],
"slot": "subhead",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "lg",
"leading": "1.3",
"tracking": "0.05em",
"transform": "uppercase"
},
"ink": "#222222"
},
{…}{10 keys
"id": "jk003i",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "The List to Launch Lab",
"align": "left",
"colour": "ink-strong"
},
"at": [5, 22, 8, 11],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "4xl",
"leading": "1.2",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{11 keys
"id": "jk003j",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>My exact email system and blueprint for starting, nurturing, and monetizing your very own email list. Designed for entrepreneurs who want to drive results—no matter what industry they serve or what offers they have to sell.</p>",
"align": "left",
"colour": "ink-body"
},
"at": [5, 19, 11, 16],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "xl",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#222222"
},
{…}{11 keys
"id": "jk003k",
"type": "button",
"layout": "button.quiet",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center font-body text-base font-medium underline underline-offset-4 text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "More info",
"link": {…}{2 keys
"href": "https://listtolaunch.jennakutcher.com/",
"target": "_blank"
},
"fill": "canvas",
"align": "end",
"width": "auto"
},
"at": [18, 24, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.2",
"tracking": "0.15em",
"transform": "uppercase"
},
"underline": false
},
{…}{12 keys
"id": "jkc003",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [5, 25, 4, 18],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 4, 31]
}
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk003e
text.eyebrow
subhead [12, 25, 2, 3]
650×30px
3×1
stretch
condensed · black · xl · lh 1.2 · ls 0.05em · uppercase #6579be The JK Course Library ink
jk003f
divider.line
divider [5, 25, 2, 4]
1000×61px
1×1
stretch
layout default secondary rule panel #f2dc53 float z=-1 mobile
jk003g
text.title
label [5, 9, 5, 8]
200×91px
4×1
stretch
condensed · black · 3xl · lh 1.2 · ls 0.05em · uppercase #6579be 04 ink
jk003h
text.eyebrow
subhead [9, 24, 5, 6]
750×30px
3×1
stretch
mono · normal · lg · lh 1.3 · ls 0.05em · uppercase #222222 Grow (or start) your email list ink
jk003i
text.heading
headline [5, 22, 8, 11]
850×91px
4×1
stretch
display · normal · 4xl · lh 1.2 · ls normal ink-strong The List to Launch Lab
jk003j
text.body
body [5, 19, 11, 16]
700×152px
3×1
stretch
body · normal · xl · lh 1.8 · ls normal #222222 My exact email system and blueprint for starting, nurturing, and monetizing y… ink
jk003k
button.quiet
action [18, 24, 16, 18]
300×61px
2×1
stretch
body · bold · sm · lh 1.2 · ls 0.15em · uppercase More info underline
jkc003
divider.line
[5, 25, 4, 18]
1000×426px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile

Element-scope extensions in this band: node.typography, node.ink, node.panel, node.float, node.z, node.mobile, node.underline

Render against origin

365px short.

The yellow has no surface role
#f2dc53 is the seventh colour in the brand and the sixth surface role is already taken. It survives here only because this card's tab names it directly through node.panel. A brand of seven colours meeting a vocabulary of six roles is the cleanest example on the page of a value that has nowhere structural to live.
14

Favorite Things

features features.split jk003q
Origin y
13068–14040
Origin height
972px
Build height
778px
Δ
-194px
Ground
deep
space
6 rows · 182px
Elements
4
Origin — Favorite Things
ORIGIN · y 13068–14040 · 972px · near-black #18161b (video)
Build — Favorite Things
BUILD · y 11875–12653 · 778px · jk003q

What this band is

A near-black band. Favorite Things in the serif, a wry line — Will I belt Julie Andrews? Maybe. — a paragraph, and a Put on your comfy pants & go action.

Why this category and layout

features.split on a deep ground, which flips every ink in the band to its light values without any element declaring it.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 4 elements the table below summarises.

{…}{7 keys
"id": "jk003q",
"type": "section",
"layout": "features.split",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "deep",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 6
},
"kids": […][4 items
{…}{11 keys
"id": "jk003m",
"type": "text",
"layout": "text.eyebrow",
"tree": {…}{3 keys
"tag": "p",
"slot": "body",
"class": "font-body text-sm font-medium uppercase tracking-[0.18em] text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Will I belt Julie Andrews? Maybe.",
"align": "left",
"colour": "ink-body"
},
"at": [3, 14, 4, 5],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
},
"ink": "#ffffff"
},
{…}{9 keys
"id": "jk003n",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Favorite Things",
"align": "left",
"colour": "ink-strong"
},
"at": [3, 17, 6, 9],
"slot": "headline"
},
{…}{11 keys
"id": "jk003o",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>What does an entrepreneur / mom / midwestern role model come to love? Here’s where you find out! This is everything I have tested and loved, from <strong>my wellness and beauty holy grails</strong>, to what I’ll never stop reaching for in my closet. If you crave a life that’s <em>less</em> complicated you’re going to love what I’m loving.</p>",
"align": "left",
"colour": "ink-body"
},
"at": [3, 13, 10, 16],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "lg",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#ffffff"
},
{…}{10 keys
"id": "jk003p",
"type": "button",
"layout": "button.pill",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-full px-7 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Put on your comfy pants &amp; go →",
"link": {…}{2 keys
"href": "https://jennakutcher.com/jennas-favorite-things",
"target": "_blank"
},
"fill": "tertiary",
"align": "start",
"width": "auto"
},
"at": [3, 12, 17, 19],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "base",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
}
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk003m
text.eyebrow
subhead [3, 14, 4, 5]
550×30px
3×1
stretch
body · bold · sm · lh 1.8 · ls 0.15em · uppercase #ffffff Will I belt Julie Andrews? Maybe. ink
jk003n
text.title
headline [3, 17, 6, 9]
700×91px
4×1
stretch
layout default ink-strong Favorite Things
jk003o
text.body
body [3, 13, 10, 16]
500×182px
3×1
stretch
body · normal · lg · lh 1.8 · ls normal #ffffff What does an entrepreneur / mom / midwestern role model come to love? Here’s … ink
jk003p
button.pill
action [3, 12, 17, 19]
450×61px
2×1
stretch
body · bold · base · lh 1.8 · ls 0.15em · uppercase Put on your comfy pants & go →

Element-scope extensions in this band: node.typography, node.ink

Render against origin

194px short.

The ground is a video, and nothing can see inside it
This band's backdrop is a near-black <video> element. No file in origin/img/ matches it, so the band is deep with no image — at that darkness it loses very little, but the document is asserting a flat fill where the origin plays footage. Every DOM detector returns clean on a video, so silence here is not evidence of stillness.
15

Beauty / Business / Health

features features.three jk0040
Origin y
14040–14576
Origin height
536px
Build height
662px
Δ
+126px
Ground
primary
space
2 rows · 61px
Elements
10
Origin — Beauty / Business / Health
ORIGIN · y 14040–14576 · 536px · orange #eb6c2f
Build — Beauty / Business / Health
BUILD · y 12653–13315 · 662px · jk0040

What this band is

Three tiles on orange — Beauty, Business, Health — each a photograph with a title and a one-line description.

Why this category and layout

features.three, and for once literally three columns of three content units. The layout's authored placements are used unchanged.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 10 elements the table below summarises.

{…}{8 keys
"id": "jk0040",
"type": "section",
"layout": "features.three",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "primary",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 2
},
"kids": […][10 items
{…}{9 keys
"id": "jk003r",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:fave-beauty",
"alt": "Jenna Kutcher in a white blazer"
}
},
"at": [1, 7, 3, 15],
"slot": "media"
},
{…}{11 keys
"id": "jk003s",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcher.com/jennas-favorite-things#beauty.0">Beauty</a>",
"align": "center",
"colour": "ink-strong"
},
"at": [1, 7, 16, 18],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"underline": false
},
{…}{11 keys
"id": "jk003t",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Clean &amp; simple. Just the way I like it.</p>",
"align": "center",
"colour": "ink-body"
},
"at": [1, 7, 18, 20],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "base",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#2b2b2b"
},
{…}{9 keys
"id": "jk003u",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:fave-business",
"alt": "Jenna Kutcher holding a microphone"
}
},
"at": [10, 16, 3, 15],
"slot": "media"
},
{…}{11 keys
"id": "jk003v",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcher.com/jennas-favorite-things#business.0">Business</a>",
"align": "center",
"colour": "ink-strong"
},
"at": [10, 16, 16, 18],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"underline": false
},
{…}{11 keys
"id": "jk003w",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>The tools I use to get it all done.</p>",
"align": "center",
"colour": "ink-body"
},
"at": [10, 16, 18, 20],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "base",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#2b2b2b"
},
{…}{9 keys
"id": "jk003x",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:fave-health",
"alt": "Jenna Kutcher sitting on the floor with printed photographs"
}
},
"at": [19, 25, 3, 15],
"slot": "media"
},
{…}{11 keys
"id": "jk003y",
"type": "text",
"layout": "text.subheading",
"tree": {…}{3 keys
"tag": "h3",
"slot": "body",
"class": "font-body text-xl font-medium text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://jennakutcher.com/jennas-favorite-things#style.0">Health</a>",
"align": "center",
"colour": "ink-strong"
},
"at": [19, 25, 16, 18],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.6",
"tracking": "0.1em",
"transform": "uppercase"
},
"underline": false
},
{…}{11 keys
"id": "jk003z",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Taking care of what I've been given.</p>",
"align": "center",
"colour": "ink-body"
},
"at": [19, 25, 18, 20],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "base",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"ink": "#2b2b2b"
},
{…}{12 keys
"id": "jkf000",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "line"
},
"at": [2, 24, 14, 20],
"float": true,
"z": -1,
"panel": {…}{1 key
"fill": "#ffffff"
},
"mobile": {…}{1 key
"at": [1, 9, 46, 58]
}
}
],
"ink": {…}{3 keys
"strong": "#6579be",
"body": "#6579be",
"muted": "#6579be"
}
}

Section-scope extensions in use: section.ink

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk003r
image.plain
media [1, 7, 3, 15]
300×365px
2×2
stretch
layout default fave-beauty 5040557bfd1a5ca2.jpg · image/jpeg
jk003s
text.subheading
subhead [1, 7, 16, 18]
300×61px
3×1
stretch
body · bold · lg · lh 1.6 · ls 0.1em · uppercase ink-strong Beauty underline
jk003t
text.small
body [1, 7, 18, 20]
300×61px
3×1
stretch
body · normal · base · lh 1.4 · ls normal #2b2b2b Clean & simple. Just the way I like it. ink
jk003u
image.plain
media [10, 16, 3, 15]
300×365px
2×2
stretch
layout default fave-business 4543ff7f61f7e9b5.jpg · image/jpeg
jk003v
text.subheading
subhead [10, 16, 16, 18]
300×61px
3×1
stretch
body · bold · lg · lh 1.6 · ls 0.1em · uppercase ink-strong Business underline
jk003w
text.small
body [10, 16, 18, 20]
300×61px
3×1
stretch
body · normal · base · lh 1.4 · ls normal #2b2b2b The tools I use to get it all done. ink
jk003x
image.plain
media [19, 25, 3, 15]
300×365px
2×2
stretch
layout default fave-health 007159afbbece2fb.jpg · image/jpeg
jk003y
text.subheading
subhead [19, 25, 16, 18]
300×61px
3×1
stretch
body · bold · lg · lh 1.6 · ls 0.1em · uppercase ink-strong Health underline
jk003z
text.small
body [19, 25, 18, 20]
300×61px
3×1
stretch
body · normal · base · lh 1.4 · ls normal #2b2b2b Taking care of what I've been given. ink
jkf000
divider.line
[2, 24, 14, 20]
1100×182px
1×1
stretch
layout default line rule panel #ffffff float z=-1 mobile

Element-scope extensions in this band: node.typography, node.underline, node.ink, node.panel, node.float, node.z, node.mobile

Render against origin

The build runs 126px taller.

16

Ultimate Guide to Pinterest

features features.imageLeft jk0045
Origin y
14576–15284
Origin height
708px
Build height
689px
Δ
-19px
Ground
primary
space
3 rows · 91px
Elements
4
Origin — Ultimate Guide to Pinterest
ORIGIN · y 14576–15284 · 708px · orange #eb6c2f
Build — Ultimate Guide to Pinterest
BUILD · y 13315–14004 · 689px · jk0045

What this band is

Your ultimate guide to Pinterest, with a screenshot of the guide's cover on the left, a paragraph, and a Gimme that guide action.

Why this category and layout

features.imageLeft — the one layout in the category that names the side the media sits on, and the origin puts it on the left.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 4 elements the table below summarises.

{…}{7 keys
"id": "jk0045",
"type": "section",
"layout": "features.imageLeft",
"category": "features",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "primary",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 3
},
"kids": […][4 items
{…}{9 keys
"id": "jk0041",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:guide-cover",
"alt": "The cover of The Ultimate Guide to Pinterest"
}
},
"at": [4, 10, 4, 19],
"slot": "media"
},
{…}{9 keys
"id": "jk0042",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Your ultimate guide to <strong>Pinterest</strong>",
"align": "center",
"colour": "ink-strong"
},
"at": [13, 23, 5, 12],
"slot": "headline"
},
{…}{10 keys
"id": "jk0043",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Everything you need to make the most powerful platform in my business go to work for you.</p>",
"align": "center",
"colour": "ink-body"
},
"at": [14, 22, 13, 16],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "base",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{10 keys
"id": "jk0044",
"type": "button",
"layout": "button.pill",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-full px-7 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Gimme that guide",
"link": {…}{2 keys
"href": "https://jennakutcher.com/ultpinterestguide",
"target": "_blank"
},
"fill": "secondary",
"align": "center",
"width": "auto"
},
"at": [14, 22, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "sm",
"leading": "1.8",
"tracking": "0.15em",
"transform": "uppercase"
}
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk0041
image.plain
media [4, 10, 4, 19]
300×456px
2×2
stretch
layout default guide-cover f07af70664ac0d05.png · image/png
jk0042
text.title
headline [13, 23, 5, 12]
500×213px
4×1
stretch
layout default ink-strong Your ultimate guide to Pinterest
jk0043
text.small
body [14, 22, 13, 16]
400×91px
3×1
stretch
body · normal · base · lh 1.8 · ls normal ink-body Everything you need to make the most powerful platform in my business go to w…
jk0044
button.pill
action [14, 22, 16, 18]
400×61px
2×1
stretch
body · bold · sm · lh 1.8 · ls 0.15em · uppercase Gimme that guide

Element-scope extensions in this band: node.typography

Render against origin

19px short. The closest match on the page after the stats band.

17

Bringing Real to Your Inbox — signup

contact contact.simple jk0049
Origin y
15284–16048
Origin height
764px
Build height
670px
Δ
-94px
Ground
secondary + photo
space
4 rows · 122px
Elements
3
Origin — Bringing Real to Your Inbox — signup
ORIGIN · y 15284–16048 · 764px · purple photograph
Build — Bringing Real to Your Inbox — signup
BUILD · y 14005–14675 · 670px · jk0049

What this band is

Bringing Real to Your Inbox over a purple photographic ground, a paragraph about what the list actually sends, and a signup control.

Why this category and layout

contact.simple. This is the first band whose job is to collect something rather than to explain something, and the category changes with it.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 3 elements the table below summarises.

{…}{8 keys
"id": "jk0049",
"type": "section",
"layout": "contact.simple",
"category": "contact",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "secondary",
"image": {…}{2 keys
"src": "asset:inbox",
"alt": "Jenna Kutcher in a blue suit against a purple wall"
},
"space": 4
},
"kids": […][3 items
{…}{10 keys
"id": "jk0046",
"type": "text",
"layout": "text.title",
"tree": {…}{3 keys
"tag": "h1",
"slot": "body",
"class": "font-display text-5xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Bringing <strong>Real</strong> to Your Inbox",
"align": "center",
"colour": "ink-strong"
},
"at": [5, 21, 6, 11],
"slot": "headline",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "5xl",
"leading": "1",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{10 keys
"id": "jk0047",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Screw the junk mail, I'm bringing "real" right to your inbox. Deep encouragement, tough questions, needle-moving challenges, and smart strategies to help you make your <strong>dream work</strong>. You in?</p>",
"align": "center",
"colour": "ink-body"
},
"at": [6, 20, 12, 15],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "base",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{10 keys
"id": "jk0048",
"type": "button",
"layout": "button.solid",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-md px-6 py-3 font-body text-base font-medium bg-@fill surface-@fill text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "I'M INTO IT. SIGN ME UP.",
"link": {…}{2 keys
"href": "https://jennakutcher.com/flodesk",
"target": "_blank"
},
"fill": "primary",
"align": "center",
"width": "auto"
},
"at": [9, 17, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "sm",
"leading": "1.2",
"tracking": "0.1em",
"transform": "uppercase"
}
}
],
"scrim": false
}

Section-scope extensions in use: section.scrim

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk0046
text.title
headline [5, 21, 6, 11]
800×152px
4×1
stretch
display · normal · 5xl · lh 1 · ls normal ink-strong Bringing Real to Your Inbox
jk0047
text.small
subhead [6, 20, 12, 15]
700×91px
3×1
stretch
body · normal · base · lh 1.8 · ls normal ink-body Screw the junk mail, I'm bringing "real" right to your inbox. Deep encouragem…
jk0048
button.solid
action [9, 17, 16, 18]
400×61px
2×1
stretch
body · normal · sm · lh 1.2 · ls 0.1em · uppercase I'M INTO IT. SIGN ME UP.

Element-scope extensions in this band: node.typography

Render against origin

94px short.

There is no form element
The origin's signup is two inputs and a submit. The registry has seven element types and none of them is a form control, so only the submit survives — as a button. The band still reads as a signup because the words around it say so, but the document cannot collect an email address.
18

Footer — signature, bio, socials, Get Around

contact contact.split jk004t
Origin y
16048–16592
Origin height
544px
Build height
601px
Δ
+57px
Ground
raised
space
2 rows · 61px
Elements
19
Origin — Footer — signature, bio, socials, Get Around
ORIGIN · y 16048–16592 · 544px · cream #f2efe8
Build — Footer — signature, bio, socials, Get Around
BUILD · y 14675–15276 · 601px · jk004t

What this band is

Cream ground. A signature in Jenna's own handwriting, a portrait masked into a flower shape, a short bio, four social links, and a Get Around column of navigation.

Why this category and layout

contact.split — two columns, identity on one side and navigation on the other. Nineteen children, the most of any band except the freebies.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 19 elements the table below summarises.

{…}{7 keys
"id": "jk004t",
"type": "section",
"layout": "contact.split",
"category": "contact",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "raised",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 2
},
"kids": […][19 items
{…}{10 keys
"id": "jk004a",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:signature",
"alt": "Jenna Kutcher"
}
},
"at": [1, 10, 3, 8],
"slot": "media",
"fit": "contain"
},
{…}{10 keys
"id": "jk004b",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:footer-portrait",
"alt": "Jenna Kutcher in a lilac top"
}
},
"at": [1, 5, 9, 16],
"slot": "photo",
"fit": "contain"
},
{…}{10 keys
"id": "jk004c",
"type": "text",
"layout": "text.body",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-base text-pretty text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>I’m a small-town Minnesota photographer, podcaster, educator, and author with big dreams. I've been keepin' it real since 1988.</p>",
"align": "left",
"colour": "ink-body"
},
"at": [6, 16, 9, 13],
"slot": "body",
"typography": {…}{6 keys
"family": "body",
"weight": "normal",
"size": "lg",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
}
},
{…}{10 keys
"id": "jk004d",
"type": "button",
"layout": "button.outline",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-md border border-current px-6 py-3 font-body text-base font-medium text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Over 1M followers?!",
"link": {…}{2 keys
"href": "https://www.instagram.com/jennakutcher/",
"target": "_blank"
},
"fill": "raised",
"align": "start",
"width": "auto"
},
"at": [6, 12, 14, 16],
"slot": "action",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "sm",
"leading": "1.8",
"tracking": "normal",
"transform": "uppercase"
}
},
{…}{10 keys
"id": "jk004e",
"type": "button",
"layout": "button.outline",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-md border border-current px-6 py-3 font-body text-base font-medium text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "Listen to my #1 podcast",
"link": {…}{2 keys
"href": "https://jennakutcherblog.com/goal-digger-podcast/",
"target": "_blank"
},
"fill": "raised",
"align": "start",
"width": "auto"
},
"at": [12, 18, 14, 16],
"slot": "action",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "sm",
"leading": "1.8",
"tracking": "normal",
"transform": "uppercase"
}
},
{…}{10 keys
"id": "jk004f",
"type": "button",
"layout": "button.outline",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-md border border-current px-6 py-3 font-body text-base font-medium text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "I wanna be your friend",
"link": {…}{2 keys
"href": "http://www.facebook.com/jennakutcher",
"target": "_blank"
},
"fill": "raised",
"align": "start",
"width": "auto"
},
"at": [6, 12, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "sm",
"leading": "1.8",
"tracking": "normal",
"transform": "uppercase"
}
},
{…}{10 keys
"id": "jk004g",
"type": "button",
"layout": "button.outline",
"tree": {…}{5 keys
"tag": "a",
"slot": "label",
"href": "@link.href",
"target": "@link.target",
"class": "w-@width justify-self-@align self-center inline-flex items-center justify-center rounded-md border border-current px-6 py-3 font-body text-base font-medium text-ink-strong"
},
"min": [2, 1],
"derive": "stretch",
"settings": {…}{5 keys
"label": "I freaking love Pinterest",
"link": {…}{2 keys
"href": "https://www.pinterest.com/jennakutcher/",
"target": "_blank"
},
"fill": "raised",
"align": "start",
"width": "auto"
},
"at": [12, 18, 16, 18],
"slot": "action",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "sm",
"leading": "1.8",
"tracking": "normal",
"transform": "uppercase"
}
},
{…}{11 keys
"id": "jk004h",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "Get Around",
"align": "left",
"colour": "ink-strong"
},
"at": [19, 25, 3, 6],
"slot": "headline",
"typography": {…}{6 keys
"family": "condensed",
"weight": "black",
"size": "3xl",
"leading": "1.2",
"tracking": "0.01em",
"transform": "uppercase"
},
"ink": "#eb6c2f"
},
{…}{9 keys
"id": "jk004i",
"type": "divider",
"layout": "divider.line",
"tree": {…}{3 keys
"tag": "div",
"class": "flex h-full w-full items-center",
"children": […][1 item
{…}{2 keys
"tag": "div",
"class": "h-px w-full bg-@colour"
}
]
},
"min": [1, 1],
"derive": "stretch",
"settings": {…}{1 key
"colour": "ink-strong"
},
"at": [19, 24, 6, 7],
"slot": "divider"
},
{…}{11 keys
"id": "jk004j",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="http://jennakutcher.com">Home</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [19, 22, 8, 10],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004k",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="http://jennakutcher.com/courses">Courses</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [22, 25, 8, 10],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004l",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="http://jennakutcher.com/meet-jenna">About</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [19, 22, 9, 11],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004m",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="http://jkfaves.com">Favorites</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [22, 25, 9, 11],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004n",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="http://www.goaldiggerpodcast.com">Podcast</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [19, 22, 11, 13],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004o",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="https://jennakutcher.com/shop">The Shop</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [22, 25, 11, 13],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004p",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="http://www.jennakutcherblog.com">Blog</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [19, 22, 13, 15],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004q",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="https://jennakutcher.com/speaking">Speaking</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [22, 25, 13, 15],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004r",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="http://jennakutcher.com/contact">Contact</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [19, 22, 15, 17],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
},
{…}{11 keys
"id": "jk004s",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p><a href="https://static.showit.co/file/4xgPlsqR7KK6m_Laa3dRyA/61556/media_kit_-_2026.pdf">Partnerships</a></p>",
"align": "left",
"colour": "ink-body"
},
"at": [22, 25, 15, 17],
"slot": "body",
"typography": {…}{6 keys
"family": "display",
"weight": "normal",
"size": "lg",
"leading": "1.4",
"tracking": "normal",
"transform": "normal-case"
},
"underline": false
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk004a
image.plain
media [1, 10, 3, 8]
450×152px
2×2
stretch
layout default signature f35a1cb03e98b0f4.png · image/png fit=contain
jk004b
image.plain
photo [1, 5, 9, 16]
200×213px
2×2
stretch
layout default footer-portrait 0f1e7b908816a9b5.png · image/png fit=contain
jk004c
text.body
body [6, 16, 9, 13]
500×122px
3×1
stretch
body · normal · lg · lh 1.8 · ls normal ink-body I’m a small-town Minnesota photographer, podcaster, educator, and author with…
jk004d
button.outline
action [6, 12, 14, 16]
300×61px
2×1
stretch
mono · normal · sm · lh 1.8 · ls normal · uppercase Over 1M followers?!
jk004e
button.outline
action [12, 18, 14, 16]
300×61px
2×1
stretch
mono · normal · sm · lh 1.8 · ls normal · uppercase Listen to my #1 podcast
jk004f
button.outline
action [6, 12, 16, 18]
300×61px
2×1
stretch
mono · normal · sm · lh 1.8 · ls normal · uppercase I wanna be your friend
jk004g
button.outline
action [12, 18, 16, 18]
300×61px
2×1
stretch
mono · normal · sm · lh 1.8 · ls normal · uppercase I freaking love Pinterest
jk004h
text.heading
headline [19, 25, 3, 6]
300×91px
4×1
stretch
condensed · black · 3xl · lh 1.2 · ls 0.01em · uppercase #eb6c2f Get Around ink
jk004i
divider.line
divider [19, 24, 6, 7]
250×30px
1×1
stretch
layout default ink-strong rule
jk004j
text.small
body [19, 22, 8, 10]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Home underline
jk004k
text.small
body [22, 25, 8, 10]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Courses underline
jk004l
text.small
body [19, 22, 9, 11]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body About underline
jk004m
text.small
body [22, 25, 9, 11]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Favorites underline
jk004n
text.small
body [19, 22, 11, 13]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Podcast underline
jk004o
text.small
body [22, 25, 11, 13]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body The Shop underline
jk004p
text.small
body [19, 22, 13, 15]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Blog underline
jk004q
text.small
body [22, 25, 13, 15]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Speaking underline
jk004r
text.small
body [19, 22, 15, 17]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Contact underline
jk004s
text.small
body [22, 25, 15, 17]
150×61px
3×1
stretch
display · normal · lg · lh 1.4 · ls normal ink-body Partnerships underline

Element-scope extensions in this band: node.fit, node.typography, node.ink, node.underline

Render against origin

The build runs 57px taller.

One text run on the page is not in the document
"BACK TO TOP", rotated against the footer's right edge. It is a scroll affordance with no anchor behaviour available in the builder, so it is the single piece of the origin's text that does not trace. 123 of 124 runs in outline.json reach doc.json; this is the one.
19

Instagram strip + caption + copyright

contact contact.simple jk0052
Origin y
16592–17250
Origin height
658px
Build height
734px
Δ
+76px
Ground
primary
space
1 rows · 30px
Elements
8
Origin — Instagram strip + caption + copyright
ORIGIN · y 16592–17250 · 658px · orange #eb6c2f
Build — Instagram strip + caption + copyright
BUILD · y 15277–16011 · 734px · jk0052

What this band is

The closing strip: @jennakutcher, an invitation to follow, a row of feed tiles, and the copyright line.

Why this category and layout

contact.simple — an identity, an invitation, and a way through.

The section node

The whole subtree, exactly as it sits in doc.json. Collapsed to the top level — open settings for the ground and the room below it, or kids for the 8 elements the table below summarises.

{…}{7 keys
"id": "jk0052",
"type": "section",
"layout": "contact.simple",
"category": "contact",
"tree": {…}{2 keys
"tag": "section",
"class": "py-3"
},
"settings": {…}{3 keys
"background": "primary",
"image": {…}{2 keys
"src": null,
"alt": ""
},
"space": 1
},
"kids": […][8 items
{…}{12 keys
"id": "jk004u",
"type": "text",
"layout": "text.heading",
"tree": {…}{3 keys
"tag": "h2",
"slot": "body",
"class": "font-display text-3xl font-semibold tracking-tight text-balance text-@align text-@colour"
},
"min": [4, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<a href="https://www.instagram.com/jennakutcher/">@jennakutcher</a>",
"align": "center",
"colour": "ink-strong"
},
"at": [9, 17, 2, 5],
"slot": "headline",
"typography": {…}{6 keys
"family": "mono",
"weight": "normal",
"size": "base",
"leading": "1.8",
"tracking": "0.2em",
"transform": "uppercase"
},
"ink": "#222222",
"underline": false
},
{…}{9 keys
"id": "jk004v",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:ig-1",
"alt": "Jenna Kutcher lying on the floor beside a laptop"
}
},
"at": [1, 6, 6, 17],
"slot": "media"
},
{…}{9 keys
"id": "jk004w",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:ig-2",
"alt": "Jenna Kutcher in a nursery chair"
}
},
"at": [6, 11, 6, 17],
"slot": "media"
},
{…}{9 keys
"id": "jk004x",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:ig-3",
"alt": "Jenna Kutcher and her husband in the desert"
}
},
"at": [11, 16, 6, 17],
"slot": "media"
},
{…}{9 keys
"id": "jk004y",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:ig-4",
"alt": "Jenna Kutcher in a red dress"
}
},
"at": [16, 21, 6, 17],
"slot": "media"
},
{…}{9 keys
"id": "jk004z",
"type": "image",
"layout": "image.plain",
"tree": {…}{3 keys
"tag": "div",
"class": "relative h-full w-full",
"children": […][1 item
{…}{3 keys
"tag": "img",
"slot": "photo",
"class": "absolute inset-0 h-full w-full object-cover"
}
]
},
"min": [2, 2],
"derive": "stretch",
"settings": {…}{1 key
"photo": {…}{2 keys
"src": "asset:ig-5",
"alt": "A child on a staircase"
}
},
"at": [21, 25, 6, 17],
"slot": "media"
},
{…}{12 keys
"id": "jk0050",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>Join over 1 million followers on <a href="https://www.instagram.com/jennakutcher/">Instagram</a>, where I'm your mom friend with the backyard garden who also runs a multi-million dollar business, bakes gluten-free sourdough, and builds big dreams in the margins of nap time.</p>",
"align": "center",
"colour": "ink-body"
},
"at": [4, 22, 18, 21],
"slot": "subhead",
"typography": {…}{6 keys
"family": "body",
"weight": "bold",
"size": "lg",
"leading": "1.8",
"tracking": "normal",
"transform": "normal-case"
},
"runs": […][1 item
{…}{2 keys
"text": "Instagram",
"ink": "#eec3e5"
}
],
"underline": false
},
{…}{10 keys
"id": "jk0051",
"type": "text",
"layout": "text.small",
"tree": {…}{3 keys
"tag": "div",
"slot": "body",
"class": "font-body text-sm text-@align text-@colour"
},
"min": [3, 1],
"derive": "stretch",
"settings": {…}{3 keys
"body": "<p>© Jenna Kutcher 2026 &nbsp;|&nbsp; All rights reserved &nbsp;|&nbsp; <a href="https://jennakutcher.com/tonic">Site credit</a> &nbsp;|&nbsp; <a href="http://jennakutcher.com/contact">Get in touch</a> &nbsp;|&nbsp; <a href="http://www.jennakutcher.com/legal">Legal</a></p>",
"align": "center",
"colour": "ink-body"
},
"at": [4, 22, 22, 23],
"slot": "body",
"underline": false
}
]
}

Every element in it

ElementSlotat → boxmin / derive TypographyColourContentExtensions
jk004u
text.heading
headline [9, 17, 2, 5]
400×91px
4×1
stretch
mono · normal · base · lh 1.8 · ls 0.2em · uppercase #222222 @jennakutcher ink underline
jk004v
image.plain
media [1, 6, 6, 17]
250×334px
2×2
stretch
layout default ig-1 09d7d1b2568ae5bc.gif · image/gif
jk004w
image.plain
media [6, 11, 6, 17]
250×334px
2×2
stretch
layout default ig-2 0321309439be4e7f.jpg · image/jpeg
jk004x
image.plain
media [11, 16, 6, 17]
250×334px
2×2
stretch
layout default ig-3 b26093acbfa4edd0.gif · image/gif
jk004y
image.plain
media [16, 21, 6, 17]
250×334px
2×2
stretch
layout default ig-4 3b7cc417ca5480e6.jpg · image/jpeg
jk004z
image.plain
media [21, 25, 6, 17]
200×334px
2×2
stretch
layout default ig-5 4e22ae569fc06342.gif · image/gif
jk0050
text.small
subhead [4, 22, 18, 21]
900×91px
3×1
stretch
body · bold · lg · lh 1.8 · ls normal ink-body
+1 runs
Join over 1 million followers on Instagram, where I'm your mom friend with th… runs×1 underline
jk0051
text.small
body [4, 22, 22, 23]
900×30px
3×1
stretch
layout default ink-body © Jenna Kutcher 2026 | All rights reserved | Site credit | Get in touch | Leg… underline

Element-scope extensions in this band: node.typography, node.ink, node.underline, node.runs

Render against origin

The build runs 76px taller.

The feed is live, and this band self-diffs
The five tiles are pulled from Instagram at load. All five in the document are the origin's own, in the origin's order, taken from this capture — but two loads of the page a day apart show different photographs. This band and the AS SEEN IN strip are why the whole page self-diffs around 2.7% between two shots of the same URL, and why a diff percentage here has to be read as a pointer rather than a score.