papermark.com

SaaS और प्रोडक्टिविटीलाइट + डार्क

इस डिज़ाइन को AI के साथ इस्तेमाल करें

अपना AI चुनें, विचार बताएं और प्रॉम्प्ट भेजें।

  • अपने Claude Code प्रोजेक्ट में एजेंट की चैट में प्रॉम्प्ट पेस्ट करें और भेजें।

डाउनलोड करें

नमूना लेआउट

लैंडिंग पेज, इस पैक से बना
इस पैक के मापों से ही बना एक सामान्य पेज: साइट के रंग, टाइपोग्राफी, बटन और स्पेसिंग में नमूना टेक्स्ट।

वेबसाइट का नमूना

1440 px

रंग

10 रंग

कंपोनेंट

Start nowWhy Papermark?Start for free
बटन primary
#000000 पर #ffffff टेक्स्ट, r 4px, h 40px, 14px/400
बटन ghost
#ffffff के ऊपर पारदर्शी पर #ffffff टेक्स्ट, r 6px, h 32px, 14px/400
बटन secondary
#ffffff पर #0b0b0b टेक्स्ट, r 4px, h 51px, 14px/500
लिंक
#000000, बिना underline, 400
हेडर
32px, relative, 0px पर 0 लिंक
मुख्य शीर्षक
92px / 500, start अलाइन, अधिकतम 804px
बैज
"Share": #0b0b0b on #ffffff, 12px/500, 28px tall, radius 6px, padding 8px 16px
avatar
Avatar 28px, radius 999px, border 0px rgb(229, 231, 235)
फ़ॉर्म
0 forms, 0 inputs. Required markers: 0. Help texts: 0. Label placement: no labelled inputs.
टेबल
table.ps-table.audit-table: 4 columns × 6 visible rows, rows 62px tall, cell padding 12px 8px. Header not sticky, transparent bg, #00000080 text, 11px/500, left aligned, bottom border 1px #0000000f.
आइकन
Icons: 58 inline SVGs, outline/stroke, sizes 12px/16px/14px/28px, stroke 2px/2.5px/1.2px; icon font classes icon-, lucide.

इंटरैक्शन और मोशन

  • button primary "Start now": background #000000 → #000000e6
  • button secondary "Our Customers": background transparent → #ffffff14
  • body link "ISO 27001 certified · SOC 2 Type II": text #ffffffbf → #fffffff2, underline appears
  • focus button primary: outline 2px solid rgba(0, 0, 0, 0), offset 2px
  • focus body link: outline 1px auto rgb(16, 16, 16), offset 1px
  • tooltip: No tooltips: nothing on the page carries tooltip attributes or roles and no tooltip styles exist. Do not add tooltips when rebuilding.
  • मेन्यू: Hover/click menus: below the trigger, 6px gap, left edges aligned; #ffffff, radius 6px, padding 0px 0px, shadow yes; 14 items, 118px tall, 16px, padding 0px 0px, with descriptions; appears after a delay; hides within 400ms of leaving (transition or unmount).
  • मोशन: 251 elements carry transitions; typical 0.15s with ease, mostly on color, border-color, background-color. 2 running keyframe animations (l11marquee 38s infinite; ping 1s infinite). 4 sizable elements sit at opacity 0 before scrolling: scroll-reveal animations are in use (reveal on enter, fade + rise is the usual recipe).

टाइपोग्राफ़ी

3 फ़ैमिली
__articulat_c65e33स्वयं होस्ट किया गयाInterGoogle Fonts__Inter_d8ebd1स्वयं होस्ट किया गया
headline-displayQuick brown fox92px / 500 / lh 96.6px / -1.84px
headline-lgQuick brown fox40px / 500 / lh 46px / -0.6px
headline-mdQuick brown fox14px / 500 / lh 20px / -0.14px
body-mdThe quick brown fox jumps over the lazy dog16px / 400 / lh 25.6px
label-mdThe quick brown fox jumps over the lazy dog12px / 400 / lh 1.25
buttonThe quick brown fox jumps over the lazy dog14px / 400 / lh 20px
इस्तेमाल हो रहे साइज़

Spacing

4px यूनिट
48121620243680
कंटेंट की चौड़ाई
1280px
Breakpoints
480, 640, 768, 980, 1024px

Radius

बटन 4pxइनपुट 4pxकार्ड 0pxइमेज 0px

Shadows

3

डार्क थीम

पहुँच: class dark के ज़रिए। लाइट → डार्क:

background#ffffff → #030712
surface#f5f3ee → #000000
surface-2#dddddd → #0b0b0b
surface-3#d1d1d1 → #1a1a1a
foreground#0b0b0b → #0b0b0b
primary#000000 → #ffffff
on-primary#ffffff → #111111
secondary#08a87a → #08a87a
border#ffffff → #121620

डार्क मोड shadows: rgb(255, 255, 255) 0px 0px 0px 0px, rgba(59, 130, 246, 0.5) 0px 0px 0px 0px; rgba(0, 0, 0, 0.18) 0px 30px 80px 0px

लोगो और आइकन

5 संदर्भ

ये क्रॉप और इनके माप BRAND.md में हैं। पैक इस्तेमाल करने से पहले जाँच लें कि सही लोगो चुना गया है।

कंपोनेंट इन्वेंटरी

87 में से 29 प्रकार · 44 वैरिएंट · 18 अवस्थाएँ · 2 overlay

हर पंक्ति पेज पर मिली एक दृश्य शैली है। कैप्चर निष्कर्षण के दौरान मिले स्टेट दिखाते हैं। गायब कैप्चर और लाइव सत्यापित न हुए स्टेट अलग चिह्नित हैं। पूरा विवरण COMPONENTS.md और components.css में है।

Button, outlineपेज पर 3, जैसे "Our Customers"#ffffff text on transparent, border 1px solid rgba(255, 255, 255, 0.7), radius 4px, h 43px, padding 10px 16px 10px 16px, 14px/500
active (pressed), disabled: कोई बदलाव नहीं
Button, secondary-icon-right (lg)पेज पर 2, जैसे "Start for free"#0b0b0b text on #ffffff, border 1px solid transparent, radius 4px, h 51px, padding 14px 22px 14px 22px, 14px/500, icon right 16px
hover: लाइव सत्यापित नहीं
Button, inkपेज पर 1, जैसे "Start now"#ffffff text on #000000, border 1px solid transparent, radius 4px, h 40px, padding 8px 16px 8px 16px, 14px/400
hover, focus (keyboard), disabled: लाइव सत्यापित नहीं
Button, outline-icon-rightपेज पर 1, जैसे "Explore Platform"#0b0b0b text on transparent, border 1px solid rgba(0, 0, 0, 0.4), radius 4px, h 40px, padding 10px 18px 10px 18px, 13px/400, icon right 14px
hover: लाइव सत्यापित नहीं
Button, ghost-icon-right (sm)पेज पर 1, जैसे "Customer Story"#0b0b0b text on transparent, radius 0px, h 23px, padding 0px 0px 0px 0px, 15px/500, icon right 16px
hover: लाइव सत्यापित नहीं
Button, outline (lg)पेज पर 1, जैसे "Book a Demo"#ffffff text on transparent, border 1px solid rgba(255, 255, 255, 0.7), radius 4px, h 51px, padding 14px 22px 14px 22px, 14px/500
hover: लाइव सत्यापित नहीं
Button, outline (sm)पेज पर 1, जैसे "All Systems Operational"#ffffff text on transparent, border 1px solid #e5e7eb, radius 6px, h 26px, padding 4px 12px 4px 12px, 16px/400
सिर्फ़ सामान्य अवस्था
Text link, plainपेज पर 5, जैसे "Details"rgba(255, 255, 255, 0.55), no underline, 13px/400
active (pressed): कोई बदलाव नहीं
Text link, plain · mainपेज पर 4, जैसे "Pricing"#ffffff, no underline, 14px/400
hover, focus (keyboard): लाइव सत्यापित नहीं
Text link, plain · main · 3पेज पर 4, जैसे "PayTabs acquires Amazon Paym"#ffffff, no underline, 16px/400
hover: लाइव सत्यापित नहीं
Text link, plain · main · 4पेज पर 2, जैसे "Introducing Data Rooms 2.0Re"#000000, no underline, 16px/400
hover: लाइव सत्यापित नहीं
Close / dismiss button, ghostपेज पर 1#9ca3af text on transparent, radius 9999px, h 20px, padding 4px 4px 4px 4px, 16px/400, icon only 12px
Combobox / custom select, outlinedपेज पर 1, जैसे "EN"h 40px, bg transparent, border none, radius 6px, padding 8px 12px 8px 12px, 14px text #ffffff
Navigation link, plainपेज पर 1, जैसे "Data Room"#ffffff, no underline, 14px/400
Menu / dropdown trigger, ghostपेज पर 2, जैसे "Why Papermark?"#ffffff text on transparent, radius 6px, h 32px, padding 4px 10px 4px 10px, 14px/400, icon right 12px
Paginationपेज पर 116px #0b0b0b
rest: पूर्वावलोकन उपलब्ध नहीं
Footerपेज पर 1, जैसे "FooterPSharing documents, se"h 625px, bg #000000, 9 link columns, 84 links, headings: Footer, Product, About, Use cases, social links
rest: पूर्वावलोकन उपलब्ध नहीं
Footer link, plainपेज पर 79, जैसे "Papermark"rgba(255, 255, 255, 0.65), no underline, 13px/400
Social icon linksपेज पर 22 icons at 20px, #ffffff, gap 4px
Badge / pill / tag, inverse-squareपेज पर 1, जैसे "Data Rooms"#ffffff on #0b0b0b, radius 4px, h 32px, padding 6px 8px 6px 8px, 13px/400
hover: कोई बदलाव नहीं
Rating / starsपेज पर 188×16px, bg transparent, rgba(255, 255, 255, 0.7), border none, radius 0px, padding 0px 0px 0px 0px
hover: कोई बदलाव नहीं
Card, flatपेज पर 4, जैसे "01Lincoln Property$50billion"bg transparent, border none, radius 0px, padding 0px 36px 0px 0px, no shadow, about 320×263px, 4 per row
hover: कोई बदलाव नहीं
Testimonial / quote card, filled-media-topपेज पर 1bg #dddddd, border none, radius 12px, padding 0px 0px 0px 0px, no shadow, about 480×480px, media on top 480×480, radius 0px, 2 per row
Styled listपेज पर 2, जैसे "DocumentsData RoomsVisitorsA"4 items, marker none, gap 0px, item padding 6px 8px
Tableपेज पर 1, जैसे "NameView durationView comple"6 rows × 8 cols, header 11px/500 rgba(0, 0, 0, 0.5) on transparent, padding 12px 8px 12px 8px, cell 12px, padding 12px 8px 12px 8px, row 62px, row dividers
Table rowपेज पर 6, जैसे "SSarah Chensarah@sequoia.com"799×62px, bg transparent, #0b0b0b, border none, radius 0px, padding 0px 0px 0px 0px
hover: कोई बदलाव नहीं
Accordion / disclosure, detailsपेज पर 4, जैसे "FeaturesPage by Page Analyti"trigger 13px/400 rgba(255, 255, 255, 0.65), padding 0px 0px 0px 0px, 12px icon on the left, rotates over 0.15s, closed by default
open: पूर्वावलोकन उपलब्ध नहीं
Avatar, 28px-roundपेज पर 6, जैसे "S"28px, radius 999px, initials "S" on #ececea
Image / figure, aspect-1पेज पर 584×84px, aspect 1, radius 0px, object-fit contain
सिर्फ़ सामान्य अवस्था
Image / figure, aspect-1 · mainपेज पर 3480×480px, aspect 1, radius 0px, object-fit cover
सिर्फ़ सामान्य अवस्था
Image / figure, aspect-3.72पेज पर 1100×27px, aspect 3.72, radius 0px, object-fit fill, filter invert(1) brightness(2) contrast(1)
सिर्फ़ सामान्य अवस्था
Video / media embedपेज पर 11440×863px, radius 0px, no controls, autoplay
सिर्फ़ सामान्य अवस्था
Logo stripपेज पर 1, जैसे "|||||"6 logos, heights 28/28/28/28/28/28
सिर्फ़ सामान्य अवस्था
Icon, outline-14pxपेज पर 614×14px, outline, stroke 2px #10b981
सिर्फ़ सामान्य अवस्था
Icon, filled-28pxपेज पर 6, जैसे "89"28×28px, filled, fill #1a1a1a
सिर्फ़ सामान्य अवस्था
Icon, filled-16pxपेज पर 516×16px, filled, fill rgba(255, 255, 255, 0.7)
सिर्फ़ सामान्य अवस्था
Eyebrow / kickerपेज पर 2, जैसे "Workspace"rgba(0, 0, 0, 0.45) on transparent, radius 0px, h 17px, padding 0px 0px 0px 0px, 11px/400, uppercase, tracking 0.88px
सिर्फ़ सामान्य अवस्था
Eyebrow / kicker · mainपेज पर 1, जैसे "TRUSTED BY 70,000+ GLOBAL CO"rgba(255, 255, 255, 0.7) on transparent, radius 0px, h 18px, padding 0px 0px 0px 0px, 12px/500, uppercase, tracking 1.68px
सिर्फ़ सामान्य अवस्था
Dropdown menu 1combobox "EN" से click पर खुलता है, Escape से बंद होता है128×138px, above, 4px from the trigger, bg #ffffff, text #030712 16px, radius 6px, padding 0px 0px 0px 0px, shadow rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px, border 1px solid #e5e7eb, 4 items 32px tall, with icons, page scroll locked, enter 0.15s, closes on Escape
Dropdown menu 2menu button "Why Papermark?" से click पर खुलता है, Escape से बंद होता है880×558px, below, 6px from the trigger, bg #ffffff, text #030712 16px, radius 6px, padding 0px 0px 0px 0px, shadow rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px, border 1px solid #e5e7eb, 14 items 118px tall, enter 0.15s, closes on Escape

इस पेज पर नहीं: Icon button, Toggle / segmented control, Button group, Floating action button, Text input, Search field, Textarea, Select (native), Checkbox, Radio, Switch / toggle, Range slider, File input / dropzone, Date / time input, Input with attached button or addon, Field label, Help / hint text, Validation error text, Fieldset / form section, Header / navbar, Breadcrumb, Tabs, Stepper / progress steps, Sidebar navigation, Skip link, Back to top, Theme toggle, Language / region switch, Tooltip, Popover, Dialog / modal, Drawer / sheet / off-canvas, Toast / snackbar, Banner / announcement bar, Cookie / consent notice, Lightbox / media viewer, Chip (removable / selectable tag), Alert / callout, Progress bar, Spinner / loader, Skeleton / shimmer, Counter / notification dot, Empty state, Pricing card / plan, Feature item (icon + title + text), Stat / metric, List row / menu row, Avatar stack, Divider, Code block / inline code, Keyboard key, Blockquote, Carousel / slider, FAQ block, Call-to-action band, Newsletter / signup form, Search results / listing row, Content container।

रेस्पॉन्सिव

1440 / 1024 / 768 / 390 px
ViewportकंटेंटGutterBodyशीर्षकहेडरHeroGridsबटन
desktop 14401280px16px92px, 1 line, start32px, 0 linksmedia behind/overlapping text4→4 col; 2→1 col; 4→4 colcontent-width
laptop 1024864px16px65.5px, 1 line, start32px, 0 linksmedia behind/overlapping text4→4 col; 2→1 col; 4→4 colcontent-width
tablet 768720px16px49.2px, 1 line, start32px, 0 linksmedia behind/overlapping text4→2 col; 5→3 col; 6→1 col1 full-width
phone 390342px16px48px, 2 lines, start0px, 0 linksmedia behind/overlapping text4→1 col; 2→1 col; 4→1 col1 full-width
  • H1 goes 92px → 48px (52%), 1 → 2 lines.
  • No navigation links or hamburger detected at 390px; mobile navigation behavior is unverified.
  • Card grids: 4 columns → 1 column on phones (gap normal → 40px normal).
  • Body text is 16px at the sampled desktop and phone widths.
  • 1 buttons stretch full-width on phones.
  • Horizontal overflow at 768, 390px (the source has a responsive bug; do not copy it).
  • Section top padding 90px → 80px.

पैक की फ़ाइलें

108 फ़ाइलें

68 kB गाइड टेक्स्ट से शुरू करें। पैक का पूरा टेक्स्ट 1.3 MB है; ज़रूरत पड़ने पर विस्तृत फ़ाइलें खोलें। इमेज अलग हैं।

START_HERE.md99 लाइनें
# Start here: papermark.com

Observed 2026-10-28T00:43:59.346Z; default light theme. This is a compact handoff, not the full evidence archive: everything you need to start is here, the detailed files are one step away.

## How to use this pack

1. Read `START_HERE.md` and `tokens.css` first: the priority values. Keep observed values; a value marked inferred or fallback is a suggestion to resolve against the screenshots.
2. Open `screenshots/desktop-1440-fold.png` and `screenshots/phone-390-fold.png` and match the composition, density, whitespace and image treatment; the values do not carry those. Treat the inside of an image or canvas as a visual inference, not measured DOM.
3. Read `FONTS.md` and load `fonts.css` before `tokens.css`. Keep exact weights and variable-font settings and verify the fonts that actually render. If a font is unavailable, name the substitute and compare its width and apparent weight before touching the type scale.
4. Before drawing any logo or icon, read `BRAND.md` and open `screenshots/brand-icon-1.png`, `screenshots/brand-icon-2.png`, `screenshots/brand-icon-3.png`: for a new product, create an original mark with the observed proportions and treatment; never guess a shape from a label.
5. Before building any control, read `COMPONENTS.md` (every variant and measured state, with a crop of each), use `components.css` for the CSS and `demos/` for a live copy of each component. A component listed as not found does not exist on the site; do not invent it.
6. Read `REGIONS.md` and inspect its context, detail and icon crops: reconstruct outer and inner surfaces, per-layer gradients and shadows and group spacing (`regions.css` has the recipes), then check the whole page again.
7. Read `BEHAVIOR.md` for hover, focus, tooltips, menus, motion, scrolling, tables, forms, text and each breakpoint, and reproduce the behaviour, not only the colours. Build both themes; `DESIGN.md` pairs the colours.
8. `layout.html` is a generic page composed only from this pack's measured values, with placeholder copy (`layout-alt.html` in the other theme): open it to see the colours, type, recipes and spacing working together and to check your own wiring of the fonts and tokens against it. It is not the site's composition; the screenshots are.
9. `DESIGN.md` has the whole system when a value is missing above. `evidence.json` is diagnostic data: never in the first read.
10. When done, render at desktop, 390px and 320px, compare with the screenshots, fix the biggest visible mismatch first (usually type size, whitespace or image treatment), recheck keyboard focus, overflow, navigation and forms, and repeat.
11. For another site's design, run `npx stylepack-cli <host>` in the project (it downloads that pack and records it the same way), or fetch https://stylepack.ai/packs/<host>/pack.zip; one question at a time is at https://stylepack.ai/packs/<host>/fonts, /colors and /buttons.

## Priority values and evidence

Values labeled fallback were not observed for that role; inferred-role means a visible heading was mapped to a display role. Keep observed values, but treat fallbacks as suggestions.
Keep measured sizes, tracking, radii and colors unless the new content requires an explicit adaptation. Do not enlarge the headline simply to fill a different line length.
Content width: 1280px. Inferred spacing base: 4px; sampled scale: 4, 8, 12, 16, 20, 24, 36, 80px. Observed CSS breakpoints: 480, 640, 768, 980, 1024px.
Colors: background=#ffffff; surface=#f5f3ee; surface-2=#dddddd; surface-3=#d1d1d1; foreground=#0b0b0b; muted-foreground=#949494; primary=#000000; on-primary=#ffffff; secondary=#08a87a; border=#ffffff.
- primary: Selected from measured button, link, text, painted-area and theme colors. It is not proof of a filled primary button; follow the observed component recipes.
Radii: button 4px, card 0px, input 4px, image 0px.
Shadows: rgb(255, 255, 255) 0px 0px 0px 0px, rgba(59, 130, 246, 0.5) 0px 0px 0px 0px; rgba(0, 0, 0, 0.18) 0px 30px 80px 0px; rgba(0, 0, 0, 0.4) 0px 10px 60px 0px.

## Typography

Load fonts.css before applying tokens.css. FONTS.md contains the observed face/weight inventory and rendered-font checks. A CSS family name alone does not load a font.
Copy the supplied @font-face sources verbatim; do not replace a captured face with Google Fonts merely because its name looks similar. Keep fonts.css linked (or inline it verbatim for a single HTML deliverable). It includes measured semantic font defaults; tokens.css supplies scale and spacing. Use each role as a complete recipe: family, exact numeric weight, size, line height, tracking, font-feature-settings (including cv/ss stylistic sets), optical sizing and variable-font settings. A font shorthand resets feature settings; reapply the supplied longhands after it. Do not round 510 to 500/600, or turn a measured light style into a bold heading.
Use the captured family first. Self-hosted is a hosting location, not an availability verdict. An unverified probe is not evidence of failure; do not choose the optional fallback merely because it is familiar. Substitute only after an actual failed destination request or missing licensed source; record that reason and the replacement. A transient network error merits a retry before redesigning the typography.
Fallback roles are unmeasured suggestions. If a role is absent, start from the nearest observed text treatment; do not assume headings must be bold.
- __articulat_c65e33: observed weights 500; source loading recipe in fonts.css.
- Inter: observed weights 400, 500; source loading recipe in fonts.css.
- __Inter_d8ebd1: observed weights 400; source loading recipe in fonts.css.
- __articulat_c65e33 delivery by face: confirmed 500 normal; failed none; unverified none. Confirmation is from one isolated-origin check, not every deployment. Keep confirmed faces; attempt unverified faces. A failed unused face does not invalidate a working regular/bold face.
- Inter delivery by face: confirmed none; failed none; unverified 400 normal, 500 normal, 600 normal, 700 normal, 400 normal, 400 normal, 400 normal, 400 normal, 400 normal, 400 normal, 400 normal, 500 normal, 500 normal, 500 normal, 500 normal, 500 normal, 500 normal, 500 normal, 600 normal, 600 normal, 600 normal, 600 normal, 600 normal, 600 normal, 600 normal, 700 normal, 700 normal, 700 normal, 700 normal, 700 normal, 700 normal, 700 normal, 400 normal, 500 normal, 600 normal, 700 normal. Confirmation is from one isolated-origin check, not every deployment. Keep confirmed faces; attempt unverified faces. A failed unused face does not invalidate a working regular/bold face.
- __Inter_d8ebd1 delivery by face: confirmed 100 900 normal, 100 900 normal, 100 900 normal, 100 900 normal, 100 900 normal, 100 900 normal, 100 900 normal; failed none; unverified none. Confirmation is from one isolated-origin check, not every deployment. Keep confirmed faces; attempt unverified faces. A failed unused face does not invalidate a working regular/bold face.
After loading, inspect the browser's Rendered Fonts for the headline, body and button. Computed font-family/font-weight and document.fonts.check() alone do not prove which face drew the glyphs.

- headline-display: __articulat_c65e33; 92px/96.6px; weight 500; tracking -1.84px; observed, source h1.
- headline-lg: Inter; 40px/46px; weight 500; tracking -0.6px; observed, source h2.
- headline-md: __articulat_c65e33; 14px/20px; weight 500; tracking -0.14px; observed, source h3.
- body-md: Inter; 16px/25.6px; weight 400; tracking normal; observed, source body.
- label-md: Inter; 12px/1.25; weight 400; tracking normal; observed, source label.
- button: __Inter_d8ebd1; 14px/20px; weight 400; tracking normal; observed, source button.
- Font __articulat_c65e33: self-hosted; use its captured loader first. Self-hosted does not imply unavailable or licensed for reuse; substitution is conditional, not a second design choice.
- Font Inter: google; use its captured loader first. Self-hosted does not imply unavailable or licensed for reuse; substitution is conditional, not a second design choice.
- Font __Inter_d8ebd1: self-hosted; use its captured loader first. Self-hosted does not imply unavailable or licensed for reuse; substitution is conditional, not a second design choice.

## Regional composition

Read REGIONS.md and open the referenced context, detail and icon crops before drawing complex previews. Build outer shell, inset content panel and internal groups as distinct layers where observed. Preserve which surface owns each gradient, border and shadow; do not apply one generic card treatment to every layer.
For images, canvas, video and external SVG, use the rendered crops to infer visible internal groupings. Keep those inferences separate from measured DOM facts. Do not treat an illustration as a functional app or paste the screenshot as the finished UI. Return to the whole-page screenshots to match scale and placement.
- r1: 1440×863px at page (0, 37); 24 measured layers, 8 icon samples, 3 opaque media layers. screenshots/region-r1-context.jpg, screenshots/region-r1-detail.png, screenshots/region-r1-icons.png
- r2: 1075.2×604.8px at page (182.4, 1348.4); 24 measured layers, 12 icon samples, 0 opaque media layers. screenshots/region-r2-context.jpg, screenshots/region-r2-detail.png, screenshots/region-r2-icons.png
- r3: 1440×595px at page (0, 6531.8); 24 measured layers, 0 icon samples, 0 opaque media layers. screenshots/region-r3-context.jpg, screenshots/region-r3-detail.png

## Component recipes

- primary button: bg #000000; text #ffffff; border 1px solid transparent; radius 4px; height 40px; padding 8px 16px; type 14px/400; shadow none.
- ghost button: bg transparent; text #ffffff; border none; radius 6px; height 32px; padding 4px 10px; type 14px/400; shadow none.
- secondary button: bg #ffffff; text #0b0b0b; border 1px solid transparent; radius 4px; height 51px; padding 14px 22px; type 14px/500; shadow none.

## Responsive and interaction evidence

- desktop 1440px: content 1280px, gutter , H1 92px, 1 line, start, header 32px, 0 links, grids 4→4 col; 2→1 col; 4→4 col.
- laptop 1024px: content 864px, gutter , H1 65.5px, 1 line, start, header 32px, 0 links, grids 4→4 col; 2→1 col; 4→4 col.
- tablet 768px: content 720px, gutter , H1 49.2px, 1 line, start, header 32px, 0 links, grids 4→2 col; 5→3 col; 6→1 col.
- phone 390px: content 342px, gutter , H1 48px, 2 lines, start, header 0px, 0 links, grids 4→1 col; 2→1 col; 4→1 col.
H1 goes 92px → 48px (52%), 1 → 2 lines.
No navigation links or hamburger detected at 390px; mobile navigation behavior is unverified.
Card grids: 4 columns → 1 column on phones (gap normal → 40px normal).
Body text is 16px at the sampled desktop and phone widths.
- Hover button-primary: background #000000 → #000000e6.
- Hover button-secondary: background transparent → #ffffff14.
- Hover body-link: text #ffffffbf → #fffffff2, underline appears.
- Focus button-primary: outline 2px solid rgba(0, 0, 0, 0), offset 2px.
- Focus body-link: outline 1px auto rgb(16, 16, 16), offset 1px.
251 elements carry transitions; typical 0.15s with ease, mostly on color, border-color, background-color. 2 running keyframe animations (l11marquee 38s infinite; ping 1s infinite).
Alternate dark theme observed; use DESIGN.md for paired colors.

## Logo and icons

Logo not confidently located.
Icon: 12×12px; outline/stroke; stroke 2px, caps round.
Icon: 12×12px; outline/stroke; stroke 2px, caps round.

## First images to open

- screenshots/desktop-1440-fold.png: Desktop 1440, above the fold
- screenshots/phone-390-fold.png: Phone 390, above the fold

## Verify the build

Render at desktop, 390px and 320px. Inspect the result, compare against the supplied references, fix the largest visible mismatch, and recheck keyboard focus, overflow, navigation and form behavior. Match the visual language while following the requested product content.
Page background comes from body; large surface colors remain in the palette.
The primary action colour is the ink colour (monochrome palette); chromatic colours appear only as small accents.