# Sveltia CMS configuration.
#
# NOTE: everything under `collections:` is managed by the folder tools on the
# /admin/ page (right-click in the sidebar to create, rename, or delete a
# folder). Those tools rewrite this file together with
# src/collections.manifest.json. Hand-edit only if you keep both in sync.

backend:
  name: github
  repo: runmedia2/landers
  branch: main
  # Sign-in goes through our Cloudflare Worker (sveltia-cms-auth), which holds
  # the GitHub OAuth app credentials ("Run Media CMS" on the runmedia2 account).
  base_url: https://sveltia-cms-auth.jon-685.workers.dev

# Enables the "Work with Local Repository" button so you can edit files on your
# machine in Chrome/Edge without any proxy server or GitHub connection.
local_backend: true

# Run Media branding: shown on the editor sign-in screen.
logo_url: /admin/runmedia-logo.jpg

# Uploaded images land here and are referenced from the page.
media_folder: "public/images"
public_folder: "/images"

collections:
  - name: templates
    label: Templates
    icon: palette
    files:
      - name: news
        label: News lander master
        file: src/templates/news.md
        fields:
          - label: Internal name
            name: title
            widget: string
            hint: Only you see this — used in lists.
          - label: Published
            name: published
            widget: boolean
            default: true
          - label: Template / style
            name: template
            widget: select
            default: daily-health-report
            hint: More news-site styles will appear here as we build them.
            options:
              - label: Daily Health Report (news)
                value: daily-health-report
          - label: Site / masthead name
            name: siteName
            widget: string
            default: Daily Health Report
          - label: Formatting & design
            name: formatting
            widget: object
            collapsed: true
            summary: Logo, colors, fonts & disclosure — defaults already set
            fields:
              - label: Logo image (optional)
                name: logoImage
                widget: image
                required: false
                hint: Leave empty to show the site name as text.
              - label: Brand logo — right of main logo (optional)
                name: brandLogoImage
                widget: image
                required: false
                hint: e.g. a co-brand / 'presented by' logo such as P&G.
              - label: Show logo / masthead area
                name: showMasthead
                widget: boolean
                default: true
                hint: Turn OFF to hide the whole logo bar and red line — the page then starts at the category label, which acts as the brand title.
              - label: Category label
                name: category
                widget: string
                default: Health
              - label: Accent / line color
                name: accentColor
                widget: color
                default: '#c8102e'
                hint: Main logo color — used for lines, links, and accents.
              - label: Button color
                name: buttonColor
                widget: color
                default: '#c8102e'
                allowInput: true
                hint: Defaults to the accent color (red). Change it to override.
              - label: Background color
                name: backgroundColor
                widget: color
                default: '#ffffff'
              - label: Background image (optional)
                name: backgroundImage
                widget: image
                required: false
                hint: Sits behind the page; the article column stays solid.
              - label: Accent background color
                name: accentBackgroundColor
                widget: color
                default: '#f7f7f8'
                hint: Used for callouts, quotes, the CTA panel, and footer.
              - label: Font
                name: fontFamily
                widget: select
                default: system
                options:
                  - label: System sans-serif (default)
                    value: system
                  - label: Georgia (serif)
                    value: georgia
                  - label: Arial
                    value: arial
                  - label: Verdana
                    value: verdana
              - label: Font color
                name: fontColor
                widget: color
                default: '#1a1a1a'
              - label: Font size — desktop (px)
                name: fontSizeDesktop
                widget: number
                value_type: int
                default: 18
                min: 12
                max: 28
              - label: Font size — mobile (px)
                name: fontSizeMobile
                widget: number
                value_type: int
                default: 17
                min: 12
                max: 24
              - label: Show 'Advertisement' strip
                name: adLabel
                widget: boolean
                default: true
              - label: Disclosure text
                name: disclosure
                widget: text
          - label: Headline
            name: headline
            widget: string
          - label: Subheadline
            name: subhead
            widget: text
            required: false
          - label: Author name
            name: authorName
            widget: string
            default: Staff Writer
          - label: Date (display text)
            name: authorDate
            widget: string
            default: June 2026
          - label: Hero image
            name: heroImage
            widget: image
            required: false
          - label: Hero image alt text
            name: heroAlt
            widget: string
            required: false
          - label: Body blocks
            name: blocks
            widget: list
            label_singular: block
            hint: Build the article from stackable blocks. Drag to reorder.
            types:
              - label: Paragraph
                name: paragraph
                widget: object
                summary: '{{fields.text}}'
                fields:
                  - label: Hidden (keep but don't show)
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Text
                    name: text
                    widget: markdown
              - label: Heading
                name: heading
                widget: object
                summary: '{{fields.text}}'
                fields:
                  - label: Hidden (keep but don't show)
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Text
                    name: text
                    widget: string
              - label: Image
                name: image
                widget: object
                fields:
                  - label: Hidden (keep but don't show)
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Image
                    name: src
                    widget: image
                  - label: Alt text
                    name: alt
                    widget: string
                    required: false
                  - label: Caption
                    name: caption
                    widget: string
                    required: false
              - label: Testimonial quote
                name: quote
                widget: object
                summary: '{{fields.text}}'
                fields:
                  - label: Hidden (keep but don't show)
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Quote
                    name: text
                    widget: text
                  - label: Attribution
                    name: attribution
                    widget: string
                    required: false
              - label: Callout (pop box)
                name: callout
                widget: object
                fields:
                  - label: Hidden (keep but don't show)
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Title
                    name: title
                    widget: string
                    required: false
                  - label: Text
                    name: text
                    widget: markdown
              - label: Inline button (CTA)
                name: cta
                widget: object
                fields:
                  - label: Hidden (keep but don't show)
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Headline
                    name: title
                    widget: string
                    required: false
                  - label: Button text
                    name: buttonText
                    widget: string
                    default: Learn More
                  - label: Button URL
                    name: buttonUrl
                    widget: string
                    default: '#'
          - label: Final call-to-action(s)
            name: finalCtas
            widget: list
            label_singular: CTA
            required: false
            summary: '{{fields.headline}}'
            hint: Shown after the article. Click + to add another, drag to reorder, or delete any (delete all to show none).
            fields:
              - label: Headline (optional)
                name: headline
                widget: string
                required: false
              - label: Button text
                name: buttonText
                widget: string
                default: Learn More
              - label: Button URL
                name: buttonUrl
                widget: string
                default: '#'
          - label: Show legal footer
            name: showLegalFooter
            widget: boolean
            default: true
      - name: sales
        label: Sales page master
        file: src/templates/sales.md
        fields:
          - label: Internal name
            name: title
            widget: string
            hint: Only you see this — used in lists.
          - label: Published
            name: published
            widget: boolean
            default: true
          - label: Template / style
            name: template
            widget: select
            default: ecom-sales
            options:
              - label: Ecom sales page
                value: ecom-sales
          - label: Browser-tab title (SEO)
            name: seoTitle
            widget: string
            required: false
          - label: Meta description (SEO)
            name: seoDescription
            widget: text
            required: false
          - label: Urgency bar text (optional)
            name: urgencyText
            widget: string
            required: false
            hint: Thin dark bar above the header, e.g. 'Limited supply — running out fast'. Leave empty to hide.
          - label: Show header
            name: showHeader
            widget: boolean
            default: true
          - label: Logo image
            name: logoImage
            widget: image
            required: false
          - label: Logo alt text
            name: logoAlt
            widget: string
            required: false
          - label: Header nav links
            name: navLinks
            widget: list
            required: false
            summary: '{{fields.label}}'
            hint: Desktop-only anchor links, e.g. label 'Benefits' + link '#benefits'.
            fields:
              - label: Label
                name: label
                widget: string
              - label: Link (#anchor or URL)
                name: href
                widget: string
          - label: Header button text
            name: headerCtaLabel
            widget: string
            required: false
          - label: Header button link
            name: headerCtaHref
            widget: string
            required: false
            hint: Usually '#pricing' to jump to the price cards.
          - label: Design / skin
            name: formatting
            widget: object
            collapsed: true
            summary: Colors & fonts — change these to re-skin the whole page
            fields:
              - label: Accent color
                name: accentColor
                widget: color
                default: '#017d3e'
                hint: Headings highlights, links, table highlight, popular-card border.
              - label: Button color
                name: buttonColor
                widget: color
                default: '#ee9100'
              - label: Button text color
                name: buttonTextColor
                widget: color
                default: '#ffffff'
              - label: Background color
                name: backgroundColor
                widget: color
                default: '#ffffff'
              - label: Tinted section background
                name: softBackgroundColor
                widget: color
                default: '#f2f8f5'
                hint: Sections set to 'soft' background use this.
              - label: Body font
                name: fontFamily
                widget: select
                default: opensans
                options:
                  - label: Open Sans (webfont, default)
                    value: opensans
                  - label: System sans-serif
                    value: system
                  - label: Georgia (serif)
                    value: georgia
                  - label: Arial
                    value: arial
                  - label: Verdana
                    value: verdana
              - label: Heading font
                name: headingFontFamily
                widget: select
                default: oswald
                options:
                  - label: Oswald (condensed, default)
                    value: oswald
                  - label: Open Sans
                    value: opensans
                  - label: System sans-serif
                    value: system
                  - label: Georgia (serif)
                    value: georgia
              - label: Font color
                name: fontColor
                widget: color
                default: '#2c2645'
              - label: Font size — desktop (px)
                name: fontSizeDesktop
                widget: number
                value_type: int
                default: 18
                min: 12
                max: 28
              - label: Font size — mobile (px)
                name: fontSizeMobile
                widget: number
                value_type: int
                default: 17
                min: 12
                max: 24
          - label: Page sections
            name: blocks
            widget: list
            label_singular: section
            hint: The whole page, top to bottom. Drag to reorder, toggle Hidden to keep without showing.
            types:
              - label: Hero (big headline + button + badges)
                name: hero
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Eyebrow (small text above)
                    name: eyebrow
                    widget: string
                    required: false
                  - label: Headline
                    name: heading
                    widget: string
                    hint: Wrap words in **stars** to color them with the accent color.
                  - label: Subheadline
                    name: subhead
                    widget: text
                    required: false
                  - label: Product image (optional)
                    name: image
                    widget: image
                    required: false
                  - label: Image alt text
                    name: imageAlt
                    widget: string
                    required: false
                  - label: Button text
                    name: ctaLabel
                    widget: string
                    required: false
                  - label: Button link
                    name: ctaHref
                    widget: string
                    required: false
                  - label: Small text under button
                    name: ctaSubtext
                    widget: string
                    required: false
                  - label: Trust badges
                    name: items
                    widget: list
                    required: false
                    summary: '{{fields.title}}'
                    fields:
                      - label: Badge image
                        name: image
                        widget: image
                        required: false
                      - label: Label
                        name: title
                        widget: string
                        required: false
              - label: Icon row (icons with labels)
                name: iconRow
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Intro text
                    name: body
                    widget: markdown
                    required: false
                  - label: Icons
                    name: items
                    widget: list
                    summary: '{{fields.title}}'
                    fields:
                      - label: Icon image
                        name: image
                        widget: image
                        required: false
                      - label: Label
                        name: title
                        widget: string
                        required: false
                      - label: Small text
                        name: text
                        widget: string
                        required: false
              - label: Benefit list (icon + title + text rows)
                name: benefitList
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Eyebrow (small text above)
                    name: eyebrow
                    widget: string
                    required: false
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Intro text
                    name: body
                    widget: markdown
                    required: false
                  - label: Benefits
                    name: items
                    widget: list
                    summary: '{{fields.title}}'
                    fields:
                      - label: Icon image
                        name: image
                        widget: image
                        required: false
                      - label: Bold title
                        name: title
                        widget: string
                        required: false
                      - label: Text
                        name: text
                        widget: text
                        required: false
              - label: Image + text (side by side)
                name: imageText
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Eyebrow (small text above)
                    name: eyebrow
                    widget: string
                    required: false
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Text
                    name: body
                    widget: markdown
                  - label: Image / infographic
                    name: image
                    widget: image
                    required: false
                  - label: Image alt text
                    name: imageAlt
                    widget: string
                    required: false
                  - label: Image side
                    name: imageSide
                    widget: select
                    default: right
                    options:
                      - label: Right
                        value: right
                      - label: Left
                        value: left
                  - label: Button text (optional)
                    name: ctaLabel
                    widget: string
                    required: false
                  - label: Button link
                    name: ctaHref
                    widget: string
                    required: false
              - label: Testimonial / review
                name: testimonial
                widget: object
                summary: '{{fields.name}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Heading (optional)
                    name: heading
                    widget: string
                    required: false
                  - label: Quote
                    name: quote
                    widget: text
                  - label: Name
                    name: name
                    widget: string
                    required: false
                  - label: Location
                    name: location
                    widget: string
                    required: false
                  - label: Extra info (e.g. '49 days ago')
                    name: meta
                    widget: string
                    required: false
                  - label: Stars (0–5)
                    name: stars
                    widget: number
                    value_type: int
                    default: 5
                    min: 0
                    max: 5
                  - label: Show 'Verified User'
                    name: verified
                    widget: boolean
                    default: true
                  - label: Photo
                    name: image
                    widget: image
                    required: false
              - label: CTA banner (headline + button)
                name: ctaBanner
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Headline
                    name: heading
                    widget: string
                    required: false
                  - label: Text
                    name: body
                    widget: markdown
                    required: false
                  - label: Button text
                    name: ctaLabel
                    widget: string
                  - label: Button link
                    name: ctaHref
                    widget: string
                    hint: '''#pricing'' to jump to price cards, or a full checkout URL.'
                  - label: Small text under button
                    name: ctaSubtext
                    widget: string
                    required: false
              - label: Pricing cards
                name: pricing
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id
                    name: anchor
                    widget: string
                    required: false
                    hint: Set to 'pricing' so buttons elsewhere can link to '#pricing'.
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Subheading
                    name: subhead
                    widget: string
                    required: false
                  - label: Price cards
                    name: cards
                    widget: list
                    summary: '{{fields.title}} — {{fields.price}}'
                    fields:
                      - label: Ribbon (e.g. 'Most Popular' — leave empty for none)
                        name: badge
                        widget: string
                        required: false
                      - label: Title (e.g. '6 BOTTLES')
                        name: title
                        widget: string
                      - label: Supply line (e.g. '6-Month Supply')
                        name: supply
                        widget: string
                        required: false
                      - label: Product image
                        name: image
                        widget: image
                        required: false
                      - label: Regular price (struck through)
                        name: regularPrice
                        widget: string
                        required: false
                      - label: Price
                        name: price
                        widget: string
                      - label: Price note (e.g. 'per bottle')
                        name: priceNote
                        widget: string
                        required: false
                      - label: Bonus line (e.g. '+3 FREE BOTTLES')
                        name: bonusText
                        widget: string
                        required: false
                      - label: Button text
                        name: buttonText
                        widget: string
                        default: BUY NOW
                      - label: Button link (checkout URL)
                        name: buttonUrl
                        widget: string
                        hint: Paste the partner checkout link for this package.
                      - label: Show payment-method icons
                        name: showPaymentIcons
                        widget: boolean
                        default: true
              - label: Founder promise (story + signature + guarantee card)
                name: promise
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Eyebrow (small text above)
                    name: eyebrow
                    widget: string
                    required: false
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Story text
                    name: body
                    widget: markdown
                  - label: Photo
                    name: photo
                    widget: image
                    required: false
                  - label: Name
                    name: name
                    widget: string
                    required: false
                  - label: Role (e.g. 'Formulator & Founder')
                    name: role
                    widget: string
                    required: false
                  - label: Signature image
                    name: signatureImage
                    widget: image
                    required: false
                  - label: Guarantee card title
                    name: cardTitle
                    widget: string
                    required: false
                  - label: Guarantee card text
                    name: cardText
                    widget: text
                    required: false
              - label: Comparison table (us vs. other brands)
                name: comparison
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Subheading
                    name: subhead
                    widget: string
                    required: false
                  - label: Intro text
                    name: body
                    widget: markdown
                    required: false
                  - label: Product image
                    name: image
                    widget: image
                    required: false
                  - label: Image alt text
                    name: imageAlt
                    widget: string
                    required: false
                  - label: Column 1 label
                    name: col1Label
                    widget: string
                  - label: Column 2 label
                    name: col2Label
                    widget: string
                  - label: Rows (first row = your brand, highlighted)
                    name: rows
                    widget: list
                    summary: '{{fields.brand}}'
                    fields:
                      - label: Brand name
                        name: brand
                        widget: string
                      - label: Column 1 — good (✔) or bad (✘)
                        name: col1Good
                        widget: boolean
                        default: false
                      - label: Column 1 — detail text
                        name: col1Text
                        widget: string
                        required: false
                      - label: Column 2 — good (✔) or bad (✘)
                        name: col2Good
                        widget: boolean
                        default: false
                      - label: Column 2 — detail text
                        name: col2Text
                        widget: string
                        required: false
              - label: Guarantee (badge + headline + text)
                name: guarantee
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Badge image
                    name: image
                    widget: image
                    required: false
                  - label: Small text above heading
                    name: eyebrow
                    widget: string
                    required: false
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Text
                    name: body
                    widget: markdown
                    required: false
              - label: FAQ (accordion)
                name: faq
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Small text above heading
                    name: eyebrow
                    widget: string
                    required: false
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Subheading
                    name: subhead
                    widget: string
                    required: false
                  - label: Questions
                    name: questions
                    widget: list
                    summary: '{{fields.question}}'
                    fields:
                      - label: Question
                        name: question
                        widget: string
                      - label: Answer
                        name: answer
                        widget: markdown
              - label: Video (YouTube / Vimeo / hosted file)
                name: video
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Small text above heading
                    name: eyebrow
                    widget: string
                    required: false
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Intro text
                    name: body
                    widget: markdown
                    required: false
                  - label: Video link
                    name: videoUrl
                    widget: string
                    required: false
                    hint: Paste a YouTube, Vimeo, Wistia, or direct .mp4 link — pasting the normal watch-page link is fine.
                  - label: …or upload a video file
                    name: videoFile
                    widget: file
                    required: false
                    hint: Used instead of the link if both are set. Keep files small — big videos are better hosted on YouTube/Vimeo/Wistia.
                  - label: Poster image (uploaded files only — shown before play)
                    name: image
                    widget: image
                    required: false
                  - label: Button text under video (optional)
                    name: ctaLabel
                    widget: string
                    required: false
                  - label: Button link
                    name: ctaHref
                    widget: string
                    required: false
              - label: Text / infographic (free-form)
                name: richText
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Text (supports images — use the toolbar to insert an infographic)
                    name: body
                    widget: markdown
              - label: Contact / support
                name: contact
                widget: object
                summary: '{{fields.heading}}'
                fields:
                  - label: Hidden
                    name: hidden
                    widget: boolean
                    default: false
                  - label: Anchor id (optional)
                    name: anchor
                    widget: string
                    required: false
                  - label: Tinted background
                    name: background
                    widget: select
                    required: false
                    options:
                      - label: Plain
                        value: plain
                      - label: Tinted
                        value: soft
                  - label: Logo image
                    name: image
                    widget: image
                    required: false
                  - label: Left text
                    name: body
                    widget: markdown
                    required: false
                  - label: Heading
                    name: heading
                    widget: string
                    required: false
                  - label: Subtext
                    name: subhead
                    widget: string
                    required: false
                  - label: Support email
                    name: email
                    widget: string
                    required: false
                  - label: Support phone
                    name: phone
                    widget: string
                    required: false
          - label: Footer disclaimer text
            name: footerDisclaimer
            widget: text
            required: false
          - label: Footer copyright line
            name: footerCopyright
            widget: string
            required: false
          - label: Show legal footer
            name: showLegalFooter
            widget: boolean
            default: true
      - name: listicle
        label: Listicle master
        file: src/templates/listicle.md
        fields:
          - label: Internal name
            name: title
            widget: string
            hint: Only you see this — used in lists.
          - label: Published
            name: published
            widget: boolean
            default: true
          - label: Template / style
            name: template
            widget: select
            default: listicle-reasons
            options:
              - label: Reasons listicle
                value: listicle-reasons
          - label: Browser-tab title (SEO)
            name: seoTitle
            widget: string
            required: false
          - label: Meta description (SEO)
            name: seoDescription
            widget: text
            required: false
          - label: Urgency bar text (optional)
            name: urgencyText
            widget: string
            required: false
            hint: Thin dark bar above the header. Good place for an 'Advertisement' label.
          - label: Show header
            name: showHeader
            widget: boolean
            default: true
          - label: Logo image
            name: logoImage
            widget: image
            required: false
          - label: Logo alt text
            name: logoAlt
            widget: string
            required: false
          - label: Header nav links
            name: navLinks
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
              - label: Link (#anchor or URL)
                name: href
                widget: string
          - label: Header button text
            name: headerCtaLabel
            widget: string
            required: false
          - label: Header button link
            name: headerCtaHref
            widget: string
            required: false
          - label: Design / skin
            name: formatting
            widget: object
            collapsed: true
            summary: Colors & fonts — change these to re-skin the whole page
            fields:
              - label: Accent color
                name: accentColor
                widget: color
                default: '#017d3e'
                hint: Reason numbers, headings highlights, links, callouts.
              - label: Button color
                name: buttonColor
                widget: color
                default: '#ee9100'
              - label: Button text color
                name: buttonTextColor
                widget: color
                default: '#ffffff'
              - label: Background color
                name: backgroundColor
                widget: color
                default: '#ffffff'
              - label: Tinted section background
                name: softBackgroundColor
                widget: color
                default: '#f2f8f5'
              - label: Body font
                name: fontFamily
                widget: select
                default: opensans
                options:
                  - label: Open Sans (webfont, default)
                    value: opensans
                  - label: System sans-serif
                    value: system
                  - label: Georgia (serif)
                    value: georgia
                  - label: Arial
                    value: arial
                  - label: Verdana
                    value: verdana
              - label: Heading font
                name: headingFontFamily
                widget: select
                default: oswald
                options:
                  - label: Oswald (condensed, default)
                    value: oswald
                  - label: Open Sans
                    value: opensans
                  - label: System sans-serif
                    value: system
                  - label: Georgia (serif)
                    value: georgia
              - label: Font color
                name: fontColor
                widget: color
                default: '#2c2645'
              - label: Font size — desktop (px)
                name: fontSizeDesktop
                widget: number
                value_type: int
                default: 18
                min: 12
                max: 28
              - label: Font size — mobile (px)
                name: fontSizeMobile
                widget: number
                value_type: int
                default: 17
                min: 12
                max: 24
          - label: Eyebrow (small text above headline)
            name: eyebrow
            widget: string
            required: false
          - label: Headline
            name: headline
            widget: string
            hint: Wrap words in **stars** to color them with the accent color.
          - label: Intro paragraph
            name: intro
            widget: markdown
            required: false
          - label: Hero image (optional)
            name: heroImage
            widget: image
            required: false
          - label: Hero image alt text
            name: heroImageAlt
            widget: string
            required: false
          - label: Hero button text
            name: heroCtaLabel
            widget: string
            required: false
          - label: Hero button link
            name: heroCtaHref
            widget: string
            required: false
          - label: Small text under hero button
            name: heroCtaSubtext
            widget: string
            required: false
          - label: Rating line (e.g. '4.9 / 5 from 1,300+ reviews')
            name: ratingText
            widget: string
            required: false
          - label: Trust badges
            name: trustBadges
            widget: list
            required: false
            summary: '{{fields.title}}'
            fields:
              - label: Badge image
                name: image
                widget: image
                required: false
              - label: Label
                name: title
                widget: string
                required: false
          - label: Reasons
            name: reasons
            widget: list
            label_singular: reason
            summary: '{{fields.title}}'
            hint: Each becomes a numbered reason. Drag to reorder (numbers update automatically), toggle Hidden to keep without showing.
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Reason headline
                name: title
                widget: string
              - label: Body text
                name: body
                widget: markdown
                required: false
              - label: Subheading (e.g. 'Why NMN')
                name: subheading
                widget: string
                required: false
              - label: Callout chip (e.g. '500MG NMN')
                name: callout
                widget: string
                required: false
              - label: Image (optional)
                name: image
                widget: image
                required: false
              - label: Image alt text
                name: imageAlt
                widget: string
                required: false
          - label: Experts section heading
            name: doctorsHeading
            widget: string
            required: false
          - label: Expert / doctor quotes
            name: doctors
            widget: list
            required: false
            summary: '{{fields.name}}'
            fields:
              - label: Avatar image
                name: image
                widget: image
                required: false
              - label: Name
                name: name
                widget: string
                required: false
              - label: Credentials / title
                name: credentials
                widget: string
                required: false
              - label: Quote
                name: quote
                widget: text
                required: false
          - label: Message eyebrow (small line above heading)
            name: messageEyebrow
            widget: string
            required: false
          - label: Message heading
            name: messageHeading
            widget: string
            required: false
          - label: Message body
            name: messageBody
            widget: markdown
            required: false
          - label: Message photo (headshot)
            name: messagePhoto
            widget: image
            required: false
          - label: Message name
            name: messageName
            widget: string
            required: false
          - label: Message role / credentials
            name: messageRole
            widget: string
            required: false
          - label: Signature image
            name: messageSignatureImage
            widget: image
            required: false
          - label: Guarantee badge image
            name: guaranteeImage
            widget: image
            required: false
          - label: Guarantee card title
            name: guaranteeTitle
            widget: string
            required: false
          - label: Guarantee card text
            name: guaranteeText
            widget: text
            required: false
          - label: Final CTA heading
            name: ctaHeading
            widget: string
            required: false
          - label: Final CTA subtext
            name: ctaSubhead
            widget: markdown
            required: false
          - label: Final CTA button text
            name: ctaButtonLabel
            widget: string
            required: false
          - label: Final CTA button link
            name: ctaButtonHref
            widget: string
            required: false
          - label: Small text under final button
            name: ctaSubtext
            widget: string
            required: false
          - label: Footer disclaimer text
            name: footerDisclaimer
            widget: text
            required: false
          - label: Footer copyright line
            name: footerCopyright
            widget: string
            required: false
          - label: Show legal footer
            name: showLegalFooter
            widget: boolean
            default: true
      - name: leadform
        label: Lead form master
        file: src/templates/leadform.md
        fields:
          - label: Internal name
            name: title
            widget: string
            hint: Only you see this — used in lists.
          - label: Published
            name: published
            widget: boolean
            default: true
          - label: Template / style
            name: template
            widget: select
            default: lead-form
            options:
              - label: Lead form (request an offer)
                value: lead-form
          - label: Browser-tab title (SEO)
            name: seoTitle
            widget: string
            required: false
          - label: Meta description (SEO)
            name: seoDescription
            widget: text
            required: false
          - label: Show header
            name: showHeader
            widget: boolean
            default: true
          - label: Logo image
            name: logoImage
            widget: image
            required: false
          - label: Logo alt text
            name: logoAlt
            widget: string
            required: false
          - label: Logo text (shown if no logo image)
            name: logoText
            widget: string
            required: false
          - label: Phone number (click-to-call)
            name: phone
            widget: string
            required: false
          - label: Header nav links
            name: navLinks
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
              - label: Link (#anchor or URL)
                name: href
                widget: string
          - label: Social links
            name: socials
            widget: list
            required: false
            summary: '{{fields.type}}'
            fields:
              - label: Network
                name: type
                widget: select
                options:
                  - label: Instagram
                    value: instagram
                  - label: Facebook
                    value: facebook
                  - label: WhatsApp
                    value: whatsapp
                  - label: YouTube
                    value: youtube
              - label: Link
                name: href
                widget: string
          - label: Header button text (optional)
            name: headerCtaLabel
            widget: string
            required: false
          - label: Header button link
            name: headerCtaHref
            widget: string
            required: false
            hint: Usually '#solicitar' to jump to the form.
          - label: Design / skin
            name: formatting
            widget: object
            collapsed: true
            summary: Colors & fonts — change these to re-skin the whole page
            fields:
              - label: Brand color (header / headings)
                name: brandColor
                widget: color
                default: '#102646'
              - label: Accent color (CTAs / prices)
                name: accentColor
                widget: color
                default: '#cb0019'
              - label: Button color
                name: buttonColor
                widget: color
                default: '#cb0019'
                allowInput: true
                hint: Defaults to the accent color.
              - label: Button text color
                name: buttonTextColor
                widget: color
                default: '#ffffff'
              - label: Background color
                name: backgroundColor
                widget: color
                default: '#ffffff'
              - label: Tinted section background
                name: softBackgroundColor
                widget: color
                default: '#f5f7fa'
              - label: Font color
                name: fontColor
                widget: color
                default: '#2e2e2e'
              - label: Body font
                name: fontFamily
                widget: select
                default: roboto
                options:
                  - label: Roboto (webfont, default)
                    value: roboto
                  - label: System sans-serif
                    value: system
                  - label: Arial
                    value: arial
                  - label: Georgia (serif)
                    value: georgia
              - label: Heading font
                name: headingFontFamily
                widget: select
                default: roboto
                options:
                  - label: Roboto (default)
                    value: roboto
                  - label: Oswald (condensed)
                    value: oswald
                  - label: System sans-serif
                    value: system
                  - label: Arial
                    value: arial
              - label: Font size — desktop (px)
                name: fontSizeDesktop
                widget: number
                value_type: int
                default: 17
                min: 12
                max: 26
              - label: Font size — mobile (px)
                name: fontSizeMobile
                widget: number
                value_type: int
                default: 16
                min: 12
                max: 24
          - label: Eyebrow (small chip above headline)
            name: eyebrow
            widget: string
            required: false
          - label: Headline
            name: headline
            widget: string
          - label: Subheadline
            name: subhead
            widget: text
            required: false
          - label: Hero background image (optional)
            name: heroImage
            widget: image
            required: false
            hint: A dark overlay is applied so white text stays readable.
          - label: Hero image alt text
            name: heroAlt
            widget: string
            required: false
          - label: Lead-capture form
            name: form
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Form heading
                name: heading
                widget: string
                default: Solicitar Oferta
              - label: Intro text (optional)
                name: intro
                widget: text
                required: false
              - label: Fields
                name: fields
                widget: list
                label_singular: field
                summary: '{{fields.label}}'
                hint: The inputs shown in the form. Drag to reorder.
                fields:
                  - label: Field name (posted key, no spaces)
                    name: name
                    widget: string
                    hint: e.g. 'nombre', 'email'.
                  - label: Label
                    name: label
                    widget: string
                  - label: Placeholder
                    name: placeholder
                    widget: string
                    required: false
                  - label: Type
                    name: type
                    widget: select
                    default: text
                    options:
                      - label: Text
                        value: text
                      - label: Email
                        value: email
                      - label: Phone
                        value: tel
                      - label: Number
                        value: number
                      - label: Dropdown (select)
                        value: select
                      - label: Multi-line (textarea)
                        value: textarea
                  - label: Required
                    name: required
                    widget: boolean
                    default: true
                  - label: Width
                    name: width
                    widget: select
                    default: full
                    options:
                      - label: Full row
                        value: full
                      - label: Half row
                        value: half
                  - label: Dropdown options (one per item — only for Dropdown type)
                    name: options
                    widget: list
                    required: false
                    field:
                      label: Option
                      name: option
                      widget: string
              - label: Consent checkboxes
                name: consents
                widget: list
                required: false
                summary: '{{fields.text}}'
                fields:
                  - label: Text (supports links via markdown)
                    name: text
                    widget: string
                  - label: Required
                    name: required
                    widget: boolean
                    default: true
              - label: Submit button text
                name: submitLabel
                widget: string
                default: Enviar
              - label: Form action URL (leave empty until backend is built)
                name: action
                widget: string
                required: false
                hint: Empty = the page just shows the success message. Add a POST endpoint here in step 2.
              - label: Success title (optional)
                name: successTitle
                widget: string
                required: false
              - label: Success message
                name: successMessage
                widget: text
          - label: Offers section heading
            name: offersHeading
            widget: string
            required: false
          - label: Offers section subheading
            name: offersSubhead
            widget: text
            required: false
          - label: Offers
            name: offers
            widget: list
            required: false
            summary: '{{fields.name}} — {{fields.price}}'
            fields:
              - label: Model / offer name
                name: name
                widget: string
              - label: Image
                name: image
                widget: image
                required: false
              - label: Image alt text
                name: imageAlt
                widget: string
                required: false
              - label: Ribbon badge (optional)
                name: badge
                widget: string
                required: false
              - label: Price label
                name: priceLabel
                widget: string
                default: Desde
              - label: Price
                name: price
                widget: string
                required: false
              - label: Fine print under price
                name: note
                widget: string
                required: false
              - label: Button text (optional)
                name: ctaLabel
                widget: string
                required: false
              - label: Button link
                name: ctaHref
                widget: string
                required: false
                hint: Usually '#solicitar' to scroll to the form.
          - label: Offers disclaimer / fine print
            name: offersDisclaimer
            widget: text
            required: false
          - label: Showcase section heading
            name: modelsHeading
            widget: string
            required: false
          - label: Showcase section subheading
            name: modelsSubhead
            widget: text
            required: false
          - label: Showcase cards
            name: models
            widget: list
            required: false
            summary: '{{fields.name}}'
            fields:
              - label: Name
                name: name
                widget: string
              - label: Image
                name: image
                widget: image
                required: false
              - label: Image alt text
                name: imageAlt
                widget: string
                required: false
              - label: Stat (e.g. '35 MPG')
                name: stat
                widget: string
                required: false
              - label: Stat label (e.g. 'EPA combinado')
                name: statLabel
                widget: string
                required: false
          - label: Footer columns
            name: footerColumns
            widget: list
            required: false
            summary: '{{fields.heading}}'
            fields:
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Body (markdown — address, hours, links)
                name: body
                widget: markdown
                required: false
          - label: Footer legal links (optional — defaults to Privacy/Terms/Disclaimer)
            name: footerLegalLinks
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
              - label: Link
                name: href
                widget: string
          - label: Footer disclaimer text
            name: footerDisclaimer
            widget: text
            required: false
          - label: Footer copyright line
            name: footerCopyright
            widget: string
            required: false
          - label: Show legal footer
            name: showLegalFooter
            widget: boolean
            default: true
      - name: deals
        label: Deals page master
        file: src/templates/deals.md
        fields:
          - label: Internal name
            name: title
            widget: string
          - label: Published
            name: published
            widget: boolean
            default: true
          - label: Template / style
            name: template
            widget: select
            default: hyundai-deals
            options:
              - label: Dealer deals + form
                value: hyundai-deals
          - label: Browser-tab title (SEO)
            name: seoTitle
            widget: string
            required: false
          - label: Meta description (SEO)
            name: seoDescription
            widget: text
            required: false
          - label: Show header
            name: showHeader
            widget: boolean
            default: true
          - label: Logo image
            name: logoImage
            widget: image
            required: false
          - label: Logo alt text
            name: logoAlt
            widget: string
            required: false
          - label: Phone (click-to-call)
            name: phone
            widget: string
            required: false
          - label: Header nav links
            name: navLinks
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
              - label: Link (#anchor or URL)
                name: href
                widget: string
          - label: Social links
            name: socials
            widget: list
            required: false
            summary: '{{fields.type}}'
            fields:
              - label: Network
                name: type
                widget: select
                options:
                  - label: Instagram
                    value: instagram
                  - label: Facebook
                    value: facebook
                  - label: WhatsApp
                    value: whatsapp
                  - label: YouTube
                    value: youtube
                  - label: X
                    value: x
              - label: Link
                name: href
                widget: string
          - label: Design / skin
            name: formatting
            widget: object
            collapsed: true
            summary: Colors & font — change these to re-skin the whole page
            fields:
              - label: Primary color (buttons / accents)
                name: primaryColor
                widget: color
                default: '#102646'
              - label: Heading color
                name: headingColor
                widget: color
                default: '#171717'
              - label: Body / input text color
                name: textColor
                widget: color
                default: '#2e2e2e'
              - label: Background color
                name: backgroundColor
                widget: color
                default: '#ffffff'
              - label: Tinted section background
                name: softBackgroundColor
                widget: color
                default: '#f6f6f6'
              - label: Border / hairline color
                name: borderColor
                widget: color
                default: '#dddddd'
              - label: Input background
                name: inputBackground
                widget: color
                default: '#fcfcfc'
              - label: Font
                name: fontFamily
                widget: select
                default: inter
                options:
                  - label: Inter (webfont, default)
                    value: inter
                  - label: System sans-serif
                    value: system
                  - label: Arial
                    value: arial
              - label: Font size — desktop (px)
                name: fontSizeDesktop
                widget: number
                value_type: int
                default: 16
                min: 12
                max: 24
              - label: Font size — mobile (px)
                name: fontSizeMobile
                widget: number
                value_type: int
                default: 15
                min: 12
                max: 22
          - label: Hero title (above slider, e.g. 'Ofertas')
            name: heroTitle
            widget: string
            required: false
          - label: Promo slides (hero slider)
            name: slides
            widget: list
            required: false
            summary: '{{fields.alt}}'
            fields:
              - label: Image
                name: image
                widget: image
              - label: Alt text
                name: alt
                widget: string
                required: false
              - label: Link (optional)
                name: href
                widget: string
                required: false
          - label: Lead-capture form
            name: form
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Form heading
                name: heading
                widget: string
                default: Solicitar Oferta
              - label: Fields
                name: fields
                widget: list
                label_singular: field
                summary: '{{fields.label}}'
                fields:
                  - label: Field name (posted key)
                    name: name
                    widget: string
                  - label: Label
                    name: label
                    widget: string
                  - label: Placeholder
                    name: placeholder
                    widget: string
                    required: false
                  - label: Type
                    name: type
                    widget: select
                    default: text
                    options:
                      - label: Text
                        value: text
                      - label: Email
                        value: email
                      - label: Phone
                        value: tel
                      - label: Number
                        value: number
                      - label: Dropdown (select)
                        value: select
                      - label: Multi-line
                        value: textarea
                  - label: Required
                    name: required
                    widget: boolean
                    default: true
                  - label: Width
                    name: width
                    widget: select
                    default: full
                    options:
                      - label: Full row
                        value: full
                      - label: Half row
                        value: half
                  - label: Dropdown options
                    name: options
                    widget: list
                    required: false
                    field:
                      label: Option
                      name: option
                      widget: string
              - label: Consent checkboxes
                name: consents
                widget: list
                required: false
                summary: '{{fields.text}}'
                fields:
                  - label: Text (markdown links ok)
                    name: text
                    widget: string
                  - label: Required
                    name: required
                    widget: boolean
                    default: true
              - label: Submit button text
                name: submitLabel
                widget: string
                default: Enviar
              - label: Form action URL (leave empty until backend exists)
                name: action
                widget: string
                required: false
              - label: Success message
                name: successMessage
                widget: text
              - label: Authorization fine print (under button)
                name: authorizationNote
                widget: text
                required: false
          - label: Offers heading
            name: offersHeading
            widget: string
            default: Ofertas
          - label: Deal cards
            name: deals
            widget: list
            required: false
            summary: '{{fields.name}} — {{fields.price}}'
            fields:
              - label: Model name
                name: name
                widget: string
              - label: Image
                name: image
                widget: image
                required: false
              - label: Image alt
                name: imageAlt
                widget: string
                required: false
              - label: Price label
                name: priceLabel
                widget: string
                default: desde
              - label: Price
                name: price
                widget: string
                required: false
              - label: Detail / fine print
                name: detail
                widget: string
                required: false
              - label: Button text
                name: ctaLabel
                widget: string
                default: Solicitar oferta
              - label: Button link
                name: ctaHref
                widget: string
                default: '#solicitar'
          - label: Showcase heading
            name: showcaseHeading
            widget: string
            required: false
          - label: Model lineup
            name: showcase
            widget: list
            required: false
            summary: '{{fields.name}}'
            fields:
              - label: Name
                name: name
                widget: string
              - label: Image
                name: image
                widget: image
                required: false
              - label: Image alt
                name: imageAlt
                widget: string
                required: false
              - label: Link (optional)
                name: href
                widget: string
                required: false
          - label: Show newsletter section
            name: showNewsletter
            widget: boolean
            default: true
          - label: Newsletter heading
            name: newsletterHeading
            widget: string
            default: Obten novedades de tus favoritos
          - label: Newsletter placeholder
            name: newsletterPlaceholder
            widget: string
            default: Email
          - label: Newsletter button
            name: newsletterButton
            widget: string
            default: Suscribirse
          - label: Newsletter success message
            name: newsletterSuccess
            widget: string
            default: ¡Gracias por suscribirte!
          - label: Legal fine print (paragraphs)
            name: finePrint
            widget: list
            required: false
            field:
              label: Paragraph
              name: text
              widget: text
          - label: Footer columns
            name: footerColumns
            widget: list
            required: false
            summary: '{{fields.heading}}'
            fields:
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Body (markdown)
                name: body
                widget: markdown
                required: false
          - label: Footer QR image
            name: footerQrImage
            widget: image
            required: false
          - label: Footer QR caption
            name: footerQrCaption
            widget: string
            required: false
          - label: Footer legal links
            name: footerLegalLinks
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
              - label: Link
                name: href
                widget: string
          - label: Footer copyright
            name: footerCopyright
            widget: string
            required: false
      - name: salesbf
        label: Black Friday sales master
        file: src/templates/salesbf.md
        fields:
          - label: Internal name
            name: title
            widget: string
          - label: Published
            name: published
            widget: boolean
            default: true
          - label: Publishing (domain and URL)
            name: publishing
            widget: object
            collapsed: true
            summary: Where this page goes live (domain and page URL name)
            fields:
              - label: Domain
                name: domain
                widget: select
                required: false
                default: landers-ard.pages.dev
                hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
                options:
                  - landers-ard.pages.dev
                  - americanhealthjournals.com
                  - americanwellnessjournal.com
                  - moregoodyearsmd.com
                  - moregoodyearsrx.com
              - label: Page URL name
                name: slug
                widget: string
                required: false
                hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
          - label: Template / style
            name: template
            widget: select
            default: nmn-blackfriday
            options:
              - label: NMN Black Friday (drlovelionsmane rip)
                value: nmn-blackfriday
          - label: Browser-tab title (SEO)
            name: seoTitle
            widget: string
            required: false
          - label: og:url meta (kept from the source page)
            name: ogUrl
            widget: string
            required: false
          - label: Facebook Pixel ID
            name: facebookPixelId
            widget: string
            required: false
            hint: Leave empty to ship the page without a pixel.
          - label: Urgency bar text
            name: urgencyText
            widget: string
            required: false
          - label: Header / nav
            name: nav
            widget: object
            collapsed: true
            summary: Logo, nav links and the cart button
            fields:
              - label: Logo image
                name: logoImage
                widget: image
                required: false
              - label: Logo alt text
                name: logoAlt
                widget: string
                required: false
              - label: Logo width (CSS, e.g. 150px)
                name: logoWidth
                widget: string
                required: false
                default: 150px
              - label: Nav links
                name: links
                widget: list
                required: false
                summary: '{{fields.label}}'
                fields:
                  - label: Label
                    name: label
                    widget: string
                  - label: Anchor (#id)
                    name: anchor
                    widget: string
              - label: Cart button text
                name: cartText
                widget: string
                required: false
              - label: Cart button anchor
                name: cartAnchor
                widget: string
                required: false
                default: '#cta-236'
          - label: Video hero (Wistia)
            name: video
            widget: object
            collapsed: true
            summary: Wistia video id and player size
            fields:
              - label: Wistia media id
                name: wistiaId
                widget: string
                required: false
              - label: Aspect ratio (e.g. 0.5625)
                name: aspect
                widget: string
                required: false
                default: '0.5625'
              - label: Player width (CSS)
                name: width
                widget: string
                required: false
                default: 338px
              - label: Player height (CSS)
                name: height
                widget: string
                required: false
                default: 600px
              - label: Section background color
                name: background
                widget: string
                required: false
                default: '#e5f2eb'
          - label: Headline hero + trust badges
            name: hero
            widget: object
            collapsed: true
            summary: The big two-line headline, subhead, CTA and 4 trust badges
            fields:
              - label: Headline line 1 (green)
                name: line1
                widget: string
                required: false
              - label: Headline line 2 (dark)
                name: line2
                widget: string
                required: false
              - label: Subhead
                name: subhead
                widget: string
                required: false
              - label: CTA button text
                name: ctaText
                widget: string
                required: false
              - label: CTA anchor
                name: ctaAnchor
                widget: string
                required: false
                default: '#cta-236'
              - label: Trust badges
                name: badges
                widget: list
                required: false
                summary: '{{fields.alt}}'
                fields:
                  - label: Icon image
                    name: image
                    widget: image
                    required: false
                  - label: Alt text
                    name: alt
                    widget: string
                    required: false
                  - label: Label (HTML, <br> allowed)
                    name: textHtml
                    widget: text
                    required: false
          - label: Intro + Benefits
            name: pure
            widget: object
            collapsed: true
            summary: PURE NMN-Beta intro column and the Benefits icon list
            fields:
              - label: Eyebrow
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: text
                required: false
              - label: Green subline
                name: subline
                widget: text
                required: false
              - label: Paragraphs
                name: paragraphs
                widget: list
                required: false
                field:
                  label: Paragraph (HTML allowed)
                  name: paragraph
                  widget: text
              - label: Benefits heading
                name: benefitsHeading
                widget: string
                required: false
              - label: Benefits
                name: benefits
                widget: list
                required: false
                summary: '{{fields.alt}}'
                fields:
                  - label: Icon image
                    name: icon
                    widget: image
                    required: false
                  - label: Alt text
                    name: alt
                    widget: string
                    required: false
                  - label: Text (HTML, <b> allowed)
                    name: textHtml
                    widget: text
                    required: false
          - label: Doctor intro + NAD+ column
            name: doctor
            widget: object
            collapsed: true
            summary: Dr. Love introduction and the Molecule of Youth column
            fields:
              - label: Mobile portrait photo
                name: photo
                widget: image
                required: false
              - label: Name line
                name: name
                widget: string
                required: false
              - label: Intro paragraph (HTML)
                name: introHtml
                widget: text
                required: false
              - label: It's-called line
                name: calledLine
                widget: text
                required: false
              - label: Formula paragraph
                name: para1
                widget: text
                required: false
              - label: Quality paragraph (HTML)
                name: para2Html
                widget: text
                required: false
              - label: NAD+ heading
                name: nadHeading
                widget: string
                required: false
              - label: NAD+ paragraphs (HTML)
                name: nadParas
                widget: list
                required: false
                field:
                  label: Paragraph (HTML allowed)
                  name: paragraph
                  widget: text
          - label: All-ages banner
            name: anyAge
            widget: object
            collapsed: true
            summary: NMN helps with all ages heading + CTA
            fields:
              - label: Heading
                name: heading
                widget: text
                required: false
              - label: Text (HTML allowed)
                name: text
                widget: text
                required: false
              - label: CTA button text
                name: ctaText
                widget: string
                required: false
              - label: CTA anchor
                name: ctaAnchor
                widget: string
                required: false
                default: '#cta-236'
          - label: Power of NMN + How To Use
            name: power
            widget: object
            collapsed: true
            summary: Power section and the 2X / DAILY / WITH MEAL usage circles
            fields:
              - label: Heading (HTML)
                name: headingHtml
                widget: text
                required: false
              - label: Paragraphs (HTML)
                name: paragraphs
                widget: list
                required: false
                field:
                  label: Paragraph (HTML allowed)
                  name: paragraph
                  widget: text
              - label: How-to heading
                name: howHeading
                widget: string
                required: false
              - label: How-to text
                name: howText
                widget: text
                required: false
              - label: Usage circles
                name: usage
                widget: list
                required: false
                summary: '{{fields.alt}}'
                fields:
                  - label: Icon image
                    name: icon
                    widget: image
                    required: false
                  - label: Alt text
                    name: alt
                    widget: string
                    required: false
                  - label: Circle label (HTML)
                    name: circleHtml
                    widget: text
                    required: false
          - label: What Is NMN?
            name: whatIs
            widget: object
            collapsed: true
            summary: The What Is NMN explainer
            fields:
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Body (raw HTML paragraphs)
                name: bodyHtml
                widget: text
                required: false
          - label: Harvard research
            name: harvard
            widget: object
            collapsed: true
            summary: Backed By Harvard Research section
            fields:
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Body (raw HTML)
                name: bodyHtml
                widget: text
                required: false
              - label: Bottle image
                name: bottleImage
                widget: image
                required: false
          - label: Best ingredients
            name: ingredients
            widget: object
            collapsed: true
            summary: Only the Best Ingredients + why-this-formula copy
            fields:
              - label: Eyebrow
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: text
                required: false
              - label: Body (raw HTML)
                name: bodyHtml
                widget: text
                required: false
              - label: Bottle image
                name: bottleImage
                widget: image
                required: false
          - label: Join-thousands banner
            name: join
            widget: object
            collapsed: true
            summary: Bottle lineup image + line above each buy box
            fields:
              - label: Bottles image
                name: image
                widget: image
                required: false
              - label: Text
                name: text
                widget: string
                required: false
          - label: Buy Box
            name: buyBox
            widget: object
            collapsed: true
            summary: The pricing cards — shown twice on the page, exactly like the source
            fields:
              - label: Payment icons image
                name: paymentImage
                widget: image
                required: false
              - label: Pricing cards
                name: cards
                widget: list
                required: false
                summary: '{{fields.title}}'
                fields:
                  - label: Most popular (gold border, first on mobile)
                    name: popular
                    widget: boolean
                    default: false
                  - label: Badge text
                    name: badge
                    widget: string
                    required: false
                  - label: Title (e.g. 6 BOTTLES)
                    name: title
                    widget: string
                  - label: Subtitle (e.g. 6-Month Supply)
                    name: subtitle
                    widget: string
                    required: false
                  - label: Bundle image
                    name: image
                    widget: image
                    required: false
                  - label: Image alt
                    name: imageAlt
                    widget: string
                    required: false
                  - label: Image style tweak (CSS)
                    name: imageStyle
                    widget: string
                    required: false
                  - label: Old price (struck through)
                    name: priceOld
                    widget: string
                    required: false
                  - label: Price
                    name: price
                    widget: string
                  - label: Price note (e.g. per bottle)
                    name: priceNote
                    widget: string
                    required: false
                  - label: Price style tweak (CSS)
                    name: priceStyle
                    widget: string
                    required: false
                  - label: Shipping / bonus line
                    name: shipping
                    widget: string
                    required: false
                  - label: Button text (HTML, <br> for two lines)
                    name: buttonHtml
                    widget: text
                    required: false
                  - label: Checkout URL
                    name: url
                    widget: string
          - label: Personal promise + guarantee
            name: promise
            widget: object
            collapsed: true
            summary: Dr. Love's promise letter, profile card and guarantee card
            fields:
              - label: Eyebrow
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: text
                required: false
              - label: Body (raw HTML paragraphs)
                name: bodyHtml
                widget: text
                required: false
              - label: Profile photo
                name: photo
                widget: image
                required: false
              - label: Name
                name: name
                widget: string
                required: false
              - label: Role
                name: role
                widget: string
                required: false
              - label: Signature image
                name: signatureImage
                widget: image
                required: false
              - label: Guarantee card title
                name: guaranteeTitle
                widget: string
                required: false
              - label: Guarantee card text
                name: guaranteeText
                widget: text
                required: false
          - label: Supplement facts
            name: nutri
            widget: object
            collapsed: true
            summary: Bottle + label images and the ingredients list
            fields:
              - label: Bottle image
                name: bottleImage
                widget: image
                required: false
              - label: Supplement facts image
                name: factsImage
                widget: image
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: List (raw HTML ul)
                name: listHtml
                widget: text
                required: false
          - label: Smart Way benefit rows
            name: smartWay
            widget: object
            collapsed: true
            summary: The 5 icon + copy benefit rows
            fields:
              - label: Heading
                name: heading
                widget: text
                required: false
              - label: Rows
                name: rows
                widget: list
                required: false
                summary: '{{fields.title}}'
                fields:
                  - label: Icon image
                    name: icon
                    widget: image
                    required: false
                  - label: Alt text
                    name: alt
                    widget: string
                    required: false
                  - label: Row background class
                    name: bg
                    widget: select
                    required: false
                    default: sw-bg3
                    options:
                      - sw-bg1
                      - sw-bg2
                      - sw-bg3
                  - label: Title
                    name: title
                    widget: string
                    required: false
                  - label: Text
                    name: text
                    widget: text
                    required: false
          - label: Say YES section
            name: sayYes
            widget: object
            collapsed: true
            summary: Take-back-control column + Say YES to NMN column
            fields:
              - label: Top heading
                name: topHeading
                widget: text
                required: false
              - label: Heading
                name: heading
                widget: text
                required: false
              - label: Subtext
                name: subText
                widget: text
                required: false
              - label: Say-YES items
                name: items
                widget: list
                required: false
                summary: '{{fields.text}}'
                fields:
                  - label: Icon image
                    name: icon
                    widget: image
                    required: false
                  - label: Alt text
                    name: alt
                    widget: string
                    required: false
                  - label: Text
                    name: text
                    widget: string
                    required: false
              - label: Yes heading
                name: yesHeading
                widget: string
                required: false
              - label: Yes subtext
                name: yesSub
                widget: string
                required: false
              - label: CTA button text
                name: ctaText
                widget: string
                required: false
              - label: CTA anchor
                name: ctaAnchor
                widget: string
                required: false
                default: '#cta-236'
          - label: Best price pitch
            name: bestPrice
            widget: object
            collapsed: true
            summary: How We Offer the Best NMN at the Best Price
            fields:
              - label: Heading (HTML)
                name: headingHtml
                widget: text
                required: false
              - label: Paragraphs
                name: paragraphs
                widget: list
                required: false
                field:
                  label: Paragraph (HTML allowed)
                  name: paragraph
                  widget: text
          - label: FAQ
            name: faq
            widget: object
            collapsed: true
            summary: FAQ accordion items
            fields:
              - label: Eyebrow
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Subtext
                name: subText
                widget: text
                required: false
              - label: Questions
                name: items
                widget: list
                required: false
                summary: '{{fields.question}}'
                fields:
                  - label: Question
                    name: question
                    widget: string
                  - label: Answer (raw HTML)
                    name: answerHtml
                    widget: text
                    required: false
          - label: 180-day guarantee block
            name: happy
            widget: object
            collapsed: true
            summary: Health & Happiness guarantee near the footer
            fields:
              - label: Badge image
                name: badgeImage
                widget: image
                required: false
              - label: Guarantee line (orange)
                name: guaranteeLine
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: text
                required: false
              - label: Paragraphs
                name: paragraphs
                widget: list
                required: false
                field:
                  label: Paragraph (HTML allowed)
                  name: paragraph
                  widget: text
          - label: Scientific citations
            name: citations
            widget: object
            collapsed: true
            summary: The citations list above the footer
            fields:
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Citations
                name: entries
                widget: list
                required: false
                field:
                  label: Citation (HTML, <i> allowed)
                  name: entry
                  widget: text
          - label: Footer
            name: footer
            widget: object
            collapsed: true
            summary: Supplement label, disclaimer, copyright and legal links
            fields:
              - label: Supplement facts image
                name: factsImage
                widget: image
                required: false
              - label: FDA disclaimer
                name: disclaimer
                widget: text
                required: false
              - label: Copyright line
                name: copyright
                widget: string
                required: false
              - label: Legal links
                name: links
                widget: list
                required: false
                summary: '{{fields.label}}'
                fields:
                  - label: Label
                    name: label
                    widget: string
                  - label: URL
                    name: href
                    widget: string
  - divider: true
  - name: landers
    label: Landers (pre-sell pages)
    label_singular: Lander
    folder: src/content/landers
    create: true
    slug: '{{slug}}'
    extension: md
    format: frontmatter
    summary: '{{headline}}'
    fields:
      - label: Internal name
        name: title
        widget: string
        hint: Only you see this — used in lists.
      - label: Published
        name: published
        widget: boolean
        default: true
      - label: Publishing (domain and URL)
        name: publishing
        widget: object
        collapsed: true
        summary: Where this page goes live (domain and page URL name)
        fields:
          - label: Domain
            name: domain
            widget: select
            required: false
            default: landers-ard.pages.dev
            hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
            options:
              - landers-ard.pages.dev
              - americanhealthjournals.com
              - americanwellnessjournal.com
              - moregoodyearsmd.com
              - moregoodyearsrx.com
          - label: Page URL name
            name: slug
            widget: string
            required: false
            hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
      - label: Template / style
        name: template
        widget: select
        default: daily-health-report
        hint: More news-site styles will appear here as we build them.
        options:
          - label: Daily Health Report (news)
            value: daily-health-report
      - label: Site / masthead name
        name: siteName
        widget: string
        default: Daily Health Report
      - label: Formatting & design
        name: formatting
        widget: object
        collapsed: true
        summary: Logo, colors, fonts & disclosure — defaults already set
        fields:
          - label: Logo image (optional)
            name: logoImage
            widget: image
            required: false
            hint: Leave empty to show the site name as text.
          - label: Brand logo — right of main logo (optional)
            name: brandLogoImage
            widget: image
            required: false
            hint: e.g. a co-brand / 'presented by' logo such as P&G.
          - label: Show logo / masthead area
            name: showMasthead
            widget: boolean
            default: true
            hint: Turn OFF to hide the whole logo bar and red line — the page then starts at the category label, which acts as the brand title.
          - label: Category label
            name: category
            widget: string
            default: Health
          - label: Accent / line color
            name: accentColor
            widget: color
            default: '#c8102e'
            hint: Main logo color — used for lines, links, and accents.
          - label: Button color
            name: buttonColor
            widget: color
            default: '#c8102e'
            allowInput: true
            hint: Defaults to the accent color (red). Change it to override.
          - label: Background color
            name: backgroundColor
            widget: color
            default: '#ffffff'
          - label: Background image (optional)
            name: backgroundImage
            widget: image
            required: false
            hint: Sits behind the page; the article column stays solid.
          - label: Accent background color
            name: accentBackgroundColor
            widget: color
            default: '#f7f7f8'
            hint: Used for callouts, quotes, the CTA panel, and footer.
          - label: Font
            name: fontFamily
            widget: select
            default: system
            options:
              - label: System sans-serif (default)
                value: system
              - label: Georgia (serif)
                value: georgia
              - label: Arial
                value: arial
              - label: Verdana
                value: verdana
          - label: Font color
            name: fontColor
            widget: color
            default: '#1a1a1a'
          - label: Font size — desktop (px)
            name: fontSizeDesktop
            widget: number
            value_type: int
            default: 18
            min: 12
            max: 28
          - label: Font size — mobile (px)
            name: fontSizeMobile
            widget: number
            value_type: int
            default: 17
            min: 12
            max: 24
          - label: Show 'Advertisement' strip
            name: adLabel
            widget: boolean
            default: true
          - label: Disclosure text
            name: disclosure
            widget: text
      - label: Headline
        name: headline
        widget: string
      - label: Subheadline
        name: subhead
        widget: text
        required: false
      - label: Author name
        name: authorName
        widget: string
        default: Staff Writer
      - label: Date (display text)
        name: authorDate
        widget: string
        default: June 2026
      - label: Hero image
        name: heroImage
        widget: image
        required: false
      - label: Hero image alt text
        name: heroAlt
        widget: string
        required: false
      - label: Body blocks
        name: blocks
        widget: list
        label_singular: block
        hint: Build the article from stackable blocks. Drag to reorder.
        types:
          - label: Paragraph
            name: paragraph
            widget: object
            summary: '{{fields.text}}'
            fields:
              - label: Hidden (keep but don't show)
                name: hidden
                widget: boolean
                default: false
              - label: Text
                name: text
                widget: markdown
          - label: Heading
            name: heading
            widget: object
            summary: '{{fields.text}}'
            fields:
              - label: Hidden (keep but don't show)
                name: hidden
                widget: boolean
                default: false
              - label: Text
                name: text
                widget: string
          - label: Image
            name: image
            widget: object
            fields:
              - label: Hidden (keep but don't show)
                name: hidden
                widget: boolean
                default: false
              - label: Image
                name: src
                widget: image
              - label: Alt text
                name: alt
                widget: string
                required: false
              - label: Caption
                name: caption
                widget: string
                required: false
          - label: Testimonial quote
            name: quote
            widget: object
            summary: '{{fields.text}}'
            fields:
              - label: Hidden (keep but don't show)
                name: hidden
                widget: boolean
                default: false
              - label: Quote
                name: text
                widget: text
              - label: Attribution
                name: attribution
                widget: string
                required: false
          - label: Callout (pop box)
            name: callout
            widget: object
            fields:
              - label: Hidden (keep but don't show)
                name: hidden
                widget: boolean
                default: false
              - label: Title
                name: title
                widget: string
                required: false
              - label: Text
                name: text
                widget: markdown
          - label: Inline button (CTA)
            name: cta
            widget: object
            fields:
              - label: Hidden (keep but don't show)
                name: hidden
                widget: boolean
                default: false
              - label: Headline
                name: title
                widget: string
                required: false
              - label: Button text
                name: buttonText
                widget: string
                default: Learn More
              - label: Button URL
                name: buttonUrl
                widget: string
                default: '#'
      - label: Final call-to-action(s)
        name: finalCtas
        widget: list
        label_singular: CTA
        required: false
        summary: '{{fields.headline}}'
        hint: Shown after the article. Click + to add another, drag to reorder, or delete any (delete all to show none).
        fields:
          - label: Headline (optional)
            name: headline
            widget: string
            required: false
          - label: Button text
            name: buttonText
            widget: string
            default: Learn More
          - label: Button URL
            name: buttonUrl
            widget: string
            default: '#'
      - label: Show legal footer
        name: showLegalFooter
        widget: boolean
        default: true
  - name: salespages
    label: RL - NMN - Product Pages
    label_singular: Sales page
    folder: src/content/salespages
    create: true
    slug: '{{slug}}'
    extension: md
    format: frontmatter
    summary: '{{title}}'
    fields:
      - label: Internal name
        name: title
        widget: string
        hint: Only you see this — used in lists.
      - label: Published
        name: published
        widget: boolean
        default: true
      - label: Publishing (domain and URL)
        name: publishing
        widget: object
        collapsed: true
        summary: Where this page goes live (domain and page URL name)
        fields:
          - label: Domain
            name: domain
            widget: select
            required: false
            default: landers-ard.pages.dev
            hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
            options:
              - landers-ard.pages.dev
              - americanhealthjournals.com
              - americanwellnessjournal.com
              - moregoodyearsmd.com
              - moregoodyearsrx.com
          - label: Page URL name
            name: slug
            widget: string
            required: false
            hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
      - label: Template / style
        name: template
        widget: select
        default: ecom-sales
        options:
          - label: Ecom sales page
            value: ecom-sales
      - label: Browser-tab title (SEO)
        name: seoTitle
        widget: string
        required: false
      - label: Meta description (SEO)
        name: seoDescription
        widget: text
        required: false
      - label: Urgency bar text (optional)
        name: urgencyText
        widget: string
        required: false
        hint: Thin dark bar above the header, e.g. 'Limited supply — running out fast'. Leave empty to hide.
      - label: Show header
        name: showHeader
        widget: boolean
        default: true
      - label: Logo image
        name: logoImage
        widget: image
        required: false
      - label: Logo alt text
        name: logoAlt
        widget: string
        required: false
      - label: Header nav links
        name: navLinks
        widget: list
        required: false
        summary: '{{fields.label}}'
        hint: Desktop-only anchor links, e.g. label 'Benefits' + link '#benefits'.
        fields:
          - label: Label
            name: label
            widget: string
          - label: Link (#anchor or URL)
            name: href
            widget: string
      - label: Header button text
        name: headerCtaLabel
        widget: string
        required: false
      - label: Header button link
        name: headerCtaHref
        widget: string
        required: false
        hint: Usually '#pricing' to jump to the price cards.
      - label: Design / skin
        name: formatting
        widget: object
        collapsed: true
        summary: Colors & fonts — change these to re-skin the whole page
        fields:
          - label: Accent color
            name: accentColor
            widget: color
            default: '#017d3e'
            hint: Headings highlights, links, table highlight, popular-card border.
          - label: Button color
            name: buttonColor
            widget: color
            default: '#ee9100'
          - label: Button text color
            name: buttonTextColor
            widget: color
            default: '#ffffff'
          - label: Background color
            name: backgroundColor
            widget: color
            default: '#ffffff'
          - label: Tinted section background
            name: softBackgroundColor
            widget: color
            default: '#f2f8f5'
            hint: Sections set to 'soft' background use this.
          - label: Body font
            name: fontFamily
            widget: select
            default: opensans
            options:
              - label: Open Sans (webfont, default)
                value: opensans
              - label: System sans-serif
                value: system
              - label: Georgia (serif)
                value: georgia
              - label: Arial
                value: arial
              - label: Verdana
                value: verdana
          - label: Heading font
            name: headingFontFamily
            widget: select
            default: oswald
            options:
              - label: Oswald (condensed, default)
                value: oswald
              - label: Open Sans
                value: opensans
              - label: System sans-serif
                value: system
              - label: Georgia (serif)
                value: georgia
          - label: Font color
            name: fontColor
            widget: color
            default: '#2c2645'
          - label: Font size — desktop (px)
            name: fontSizeDesktop
            widget: number
            value_type: int
            default: 18
            min: 12
            max: 28
          - label: Font size — mobile (px)
            name: fontSizeMobile
            widget: number
            value_type: int
            default: 17
            min: 12
            max: 24
      - label: Page sections
        name: blocks
        widget: list
        label_singular: section
        hint: The whole page, top to bottom. Drag to reorder, toggle Hidden to keep without showing.
        types:
          - label: Hero (big headline + button + badges)
            name: hero
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Eyebrow (small text above)
                name: eyebrow
                widget: string
                required: false
              - label: Headline
                name: heading
                widget: string
                hint: Wrap words in **stars** to color them with the accent color.
              - label: Subheadline
                name: subhead
                widget: text
                required: false
              - label: Product image (optional)
                name: image
                widget: image
                required: false
              - label: Image alt text
                name: imageAlt
                widget: string
                required: false
              - label: Button text
                name: ctaLabel
                widget: string
                required: false
              - label: Button link
                name: ctaHref
                widget: string
                required: false
              - label: Small text under button
                name: ctaSubtext
                widget: string
                required: false
              - label: Trust badges
                name: items
                widget: list
                required: false
                summary: '{{fields.title}}'
                fields:
                  - label: Badge image
                    name: image
                    widget: image
                    required: false
                  - label: Label
                    name: title
                    widget: string
                    required: false
          - label: Icon row (icons with labels)
            name: iconRow
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Intro text
                name: body
                widget: markdown
                required: false
              - label: Icons
                name: items
                widget: list
                summary: '{{fields.title}}'
                fields:
                  - label: Icon image
                    name: image
                    widget: image
                    required: false
                  - label: Label
                    name: title
                    widget: string
                    required: false
                  - label: Small text
                    name: text
                    widget: string
                    required: false
          - label: Benefit list (icon + title + text rows)
            name: benefitList
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Eyebrow (small text above)
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Intro text
                name: body
                widget: markdown
                required: false
              - label: Benefits
                name: items
                widget: list
                summary: '{{fields.title}}'
                fields:
                  - label: Icon image
                    name: image
                    widget: image
                    required: false
                  - label: Bold title
                    name: title
                    widget: string
                    required: false
                  - label: Text
                    name: text
                    widget: text
                    required: false
          - label: Image + text (side by side)
            name: imageText
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Eyebrow (small text above)
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Text
                name: body
                widget: markdown
              - label: Image / infographic
                name: image
                widget: image
                required: false
              - label: Image alt text
                name: imageAlt
                widget: string
                required: false
              - label: Image side
                name: imageSide
                widget: select
                default: right
                options:
                  - label: Right
                    value: right
                  - label: Left
                    value: left
              - label: Button text (optional)
                name: ctaLabel
                widget: string
                required: false
              - label: Button link
                name: ctaHref
                widget: string
                required: false
          - label: Testimonial / review
            name: testimonial
            widget: object
            summary: '{{fields.name}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Heading (optional)
                name: heading
                widget: string
                required: false
              - label: Quote
                name: quote
                widget: text
              - label: Name
                name: name
                widget: string
                required: false
              - label: Location
                name: location
                widget: string
                required: false
              - label: Extra info (e.g. '49 days ago')
                name: meta
                widget: string
                required: false
              - label: Stars (0–5)
                name: stars
                widget: number
                value_type: int
                default: 5
                min: 0
                max: 5
              - label: Show 'Verified User'
                name: verified
                widget: boolean
                default: true
              - label: Photo
                name: image
                widget: image
                required: false
          - label: CTA banner (headline + button)
            name: ctaBanner
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Headline
                name: heading
                widget: string
                required: false
              - label: Text
                name: body
                widget: markdown
                required: false
              - label: Button text
                name: ctaLabel
                widget: string
              - label: Button link
                name: ctaHref
                widget: string
                hint: '''#pricing'' to jump to price cards, or a full checkout URL.'
              - label: Small text under button
                name: ctaSubtext
                widget: string
                required: false
          - label: Pricing cards
            name: pricing
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id
                name: anchor
                widget: string
                required: false
                hint: Set to 'pricing' so buttons elsewhere can link to '#pricing'.
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Subheading
                name: subhead
                widget: string
                required: false
              - label: Price cards
                name: cards
                widget: list
                summary: '{{fields.title}} — {{fields.price}}'
                fields:
                  - label: Ribbon (e.g. 'Most Popular' — leave empty for none)
                    name: badge
                    widget: string
                    required: false
                  - label: Title (e.g. '6 BOTTLES')
                    name: title
                    widget: string
                  - label: Supply line (e.g. '6-Month Supply')
                    name: supply
                    widget: string
                    required: false
                  - label: Product image
                    name: image
                    widget: image
                    required: false
                  - label: Regular price (struck through)
                    name: regularPrice
                    widget: string
                    required: false
                  - label: Price
                    name: price
                    widget: string
                  - label: Price note (e.g. 'per bottle')
                    name: priceNote
                    widget: string
                    required: false
                  - label: Bonus line (e.g. '+3 FREE BOTTLES')
                    name: bonusText
                    widget: string
                    required: false
                  - label: Button text
                    name: buttonText
                    widget: string
                    default: BUY NOW
                  - label: Button link (checkout URL)
                    name: buttonUrl
                    widget: string
                    hint: Paste the partner checkout link for this package.
                  - label: Show payment-method icons
                    name: showPaymentIcons
                    widget: boolean
                    default: true
          - label: Founder promise (story + signature + guarantee card)
            name: promise
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Eyebrow (small text above)
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Story text
                name: body
                widget: markdown
              - label: Photo
                name: photo
                widget: image
                required: false
              - label: Name
                name: name
                widget: string
                required: false
              - label: Role (e.g. 'Formulator & Founder')
                name: role
                widget: string
                required: false
              - label: Signature image
                name: signatureImage
                widget: image
                required: false
              - label: Guarantee card title
                name: cardTitle
                widget: string
                required: false
              - label: Guarantee card text
                name: cardText
                widget: text
                required: false
          - label: Comparison table (us vs. other brands)
            name: comparison
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Subheading
                name: subhead
                widget: string
                required: false
              - label: Intro text
                name: body
                widget: markdown
                required: false
              - label: Product image
                name: image
                widget: image
                required: false
              - label: Image alt text
                name: imageAlt
                widget: string
                required: false
              - label: Column 1 label
                name: col1Label
                widget: string
              - label: Column 2 label
                name: col2Label
                widget: string
              - label: Rows (first row = your brand, highlighted)
                name: rows
                widget: list
                summary: '{{fields.brand}}'
                fields:
                  - label: Brand name
                    name: brand
                    widget: string
                  - label: Column 1 — good (✔) or bad (✘)
                    name: col1Good
                    widget: boolean
                    default: false
                  - label: Column 1 — detail text
                    name: col1Text
                    widget: string
                    required: false
                  - label: Column 2 — good (✔) or bad (✘)
                    name: col2Good
                    widget: boolean
                    default: false
                  - label: Column 2 — detail text
                    name: col2Text
                    widget: string
                    required: false
          - label: Guarantee (badge + headline + text)
            name: guarantee
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Badge image
                name: image
                widget: image
                required: false
              - label: Small text above heading
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Text
                name: body
                widget: markdown
                required: false
          - label: FAQ (accordion)
            name: faq
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Small text above heading
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Subheading
                name: subhead
                widget: string
                required: false
              - label: Questions
                name: questions
                widget: list
                summary: '{{fields.question}}'
                fields:
                  - label: Question
                    name: question
                    widget: string
                  - label: Answer
                    name: answer
                    widget: markdown
          - label: Video (YouTube / Vimeo / hosted file)
            name: video
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Small text above heading
                name: eyebrow
                widget: string
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Intro text
                name: body
                widget: markdown
                required: false
              - label: Video link
                name: videoUrl
                widget: string
                required: false
                hint: Paste a YouTube, Vimeo, Wistia, or direct .mp4 link — pasting the normal watch-page link is fine.
              - label: …or upload a video file
                name: videoFile
                widget: file
                required: false
                hint: Used instead of the link if both are set. Keep files small — big videos are better hosted on YouTube/Vimeo/Wistia.
              - label: Poster image (uploaded files only — shown before play)
                name: image
                widget: image
                required: false
              - label: Button text under video (optional)
                name: ctaLabel
                widget: string
                required: false
              - label: Button link
                name: ctaHref
                widget: string
                required: false
          - label: Text / infographic (free-form)
            name: richText
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Text (supports images — use the toolbar to insert an infographic)
                name: body
                widget: markdown
          - label: Contact / support
            name: contact
            widget: object
            summary: '{{fields.heading}}'
            fields:
              - label: Hidden
                name: hidden
                widget: boolean
                default: false
              - label: Anchor id (optional)
                name: anchor
                widget: string
                required: false
              - label: Tinted background
                name: background
                widget: select
                required: false
                options:
                  - label: Plain
                    value: plain
                  - label: Tinted
                    value: soft
              - label: Logo image
                name: image
                widget: image
                required: false
              - label: Left text
                name: body
                widget: markdown
                required: false
              - label: Heading
                name: heading
                widget: string
                required: false
              - label: Subtext
                name: subhead
                widget: string
                required: false
              - label: Support email
                name: email
                widget: string
                required: false
              - label: Support phone
                name: phone
                widget: string
                required: false
      - label: Footer disclaimer text
        name: footerDisclaimer
        widget: text
        required: false
      - label: Footer copyright line
        name: footerCopyright
        widget: string
        required: false
      - label: Show legal footer
        name: showLegalFooter
        widget: boolean
        default: true
  - name: salespagesbf
    label: RL - NMN - Black Friday Pages
    label_singular: Black Friday sales page
    folder: src/content/salespagesbf
    create: true
    slug: '{{slug}}'
    extension: md
    format: frontmatter
    summary: '{{title}}'
    fields:
      - label: Internal name
        name: title
        widget: string
      - label: Published
        name: published
        widget: boolean
        default: true
      - label: Publishing (domain and URL)
        name: publishing
        widget: object
        collapsed: true
        summary: Where this page goes live (domain and page URL name)
        fields:
          - label: Domain
            name: domain
            widget: select
            required: false
            default: landers-ard.pages.dev
            hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
            options:
              - landers-ard.pages.dev
              - americanhealthjournals.com
              - americanwellnessjournal.com
              - moregoodyearsmd.com
              - moregoodyearsrx.com
          - label: Page URL name
            name: slug
            widget: string
            required: false
            hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
      - label: Template / style
        name: template
        widget: select
        default: nmn-blackfriday
        options:
          - label: NMN Black Friday (drlovelionsmane rip)
            value: nmn-blackfriday
      - label: Browser-tab title (SEO)
        name: seoTitle
        widget: string
        required: false
      - label: og:url meta (kept from the source page)
        name: ogUrl
        widget: string
        required: false
      - label: Facebook Pixel ID
        name: facebookPixelId
        widget: string
        required: false
        hint: Leave empty to ship the page without a pixel.
      - label: Urgency bar text
        name: urgencyText
        widget: string
        required: false
      - label: Header / nav
        name: nav
        widget: object
        collapsed: true
        summary: Logo, nav links and the cart button
        fields:
          - label: Logo image
            name: logoImage
            widget: image
            required: false
          - label: Logo alt text
            name: logoAlt
            widget: string
            required: false
          - label: Logo width (CSS, e.g. 150px)
            name: logoWidth
            widget: string
            required: false
            default: 150px
          - label: Nav links
            name: links
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
              - label: Anchor (#id)
                name: anchor
                widget: string
          - label: Cart button text
            name: cartText
            widget: string
            required: false
          - label: Cart button anchor
            name: cartAnchor
            widget: string
            required: false
            default: '#cta-236'
      - label: Video hero (Wistia)
        name: video
        widget: object
        collapsed: true
        summary: Wistia video id and player size
        fields:
          - label: Wistia media id
            name: wistiaId
            widget: string
            required: false
          - label: Aspect ratio (e.g. 0.5625)
            name: aspect
            widget: string
            required: false
            default: '0.5625'
          - label: Player width (CSS)
            name: width
            widget: string
            required: false
            default: 338px
          - label: Player height (CSS)
            name: height
            widget: string
            required: false
            default: 600px
          - label: Section background color
            name: background
            widget: string
            required: false
            default: '#e5f2eb'
      - label: Headline hero + trust badges
        name: hero
        widget: object
        collapsed: true
        summary: The big two-line headline, subhead, CTA and 4 trust badges
        fields:
          - label: Headline line 1 (green)
            name: line1
            widget: string
            required: false
          - label: Headline line 2 (dark)
            name: line2
            widget: string
            required: false
          - label: Subhead
            name: subhead
            widget: string
            required: false
          - label: CTA button text
            name: ctaText
            widget: string
            required: false
          - label: CTA anchor
            name: ctaAnchor
            widget: string
            required: false
            default: '#cta-236'
          - label: Trust badges
            name: badges
            widget: list
            required: false
            summary: '{{fields.alt}}'
            fields:
              - label: Icon image
                name: image
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
              - label: Label (HTML, <br> allowed)
                name: textHtml
                widget: text
                required: false
      - label: Intro + Benefits
        name: pure
        widget: object
        collapsed: true
        summary: PURE NMN-Beta intro column and the Benefits icon list
        fields:
          - label: Eyebrow
            name: eyebrow
            widget: string
            required: false
          - label: Heading
            name: heading
            widget: text
            required: false
          - label: Green subline
            name: subline
            widget: text
            required: false
          - label: Paragraphs
            name: paragraphs
            widget: list
            required: false
            field:
              label: Paragraph (HTML allowed)
              name: paragraph
              widget: text
          - label: Benefits heading
            name: benefitsHeading
            widget: string
            required: false
          - label: Benefits
            name: benefits
            widget: list
            required: false
            summary: '{{fields.alt}}'
            fields:
              - label: Icon image
                name: icon
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
              - label: Text (HTML, <b> allowed)
                name: textHtml
                widget: text
                required: false
      - label: Doctor intro + NAD+ column
        name: doctor
        widget: object
        collapsed: true
        summary: Dr. Love introduction and the Molecule of Youth column
        fields:
          - label: Mobile portrait photo
            name: photo
            widget: image
            required: false
          - label: Name line
            name: name
            widget: string
            required: false
          - label: Intro paragraph (HTML)
            name: introHtml
            widget: text
            required: false
          - label: It's-called line
            name: calledLine
            widget: text
            required: false
          - label: Formula paragraph
            name: para1
            widget: text
            required: false
          - label: Quality paragraph (HTML)
            name: para2Html
            widget: text
            required: false
          - label: NAD+ heading
            name: nadHeading
            widget: string
            required: false
          - label: NAD+ paragraphs (HTML)
            name: nadParas
            widget: list
            required: false
            field:
              label: Paragraph (HTML allowed)
              name: paragraph
              widget: text
      - label: All-ages banner
        name: anyAge
        widget: object
        collapsed: true
        summary: NMN helps with all ages heading + CTA
        fields:
          - label: Heading
            name: heading
            widget: text
            required: false
          - label: Text (HTML allowed)
            name: text
            widget: text
            required: false
          - label: CTA button text
            name: ctaText
            widget: string
            required: false
          - label: CTA anchor
            name: ctaAnchor
            widget: string
            required: false
            default: '#cta-236'
      - label: Power of NMN + How To Use
        name: power
        widget: object
        collapsed: true
        summary: Power section and the 2X / DAILY / WITH MEAL usage circles
        fields:
          - label: Heading (HTML)
            name: headingHtml
            widget: text
            required: false
          - label: Paragraphs (HTML)
            name: paragraphs
            widget: list
            required: false
            field:
              label: Paragraph (HTML allowed)
              name: paragraph
              widget: text
          - label: How-to heading
            name: howHeading
            widget: string
            required: false
          - label: How-to text
            name: howText
            widget: text
            required: false
          - label: Usage circles
            name: usage
            widget: list
            required: false
            summary: '{{fields.alt}}'
            fields:
              - label: Icon image
                name: icon
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
              - label: Circle label (HTML)
                name: circleHtml
                widget: text
                required: false
      - label: What Is NMN?
        name: whatIs
        widget: object
        collapsed: true
        summary: The What Is NMN explainer
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Body (raw HTML paragraphs)
            name: bodyHtml
            widget: text
            required: false
      - label: Harvard research
        name: harvard
        widget: object
        collapsed: true
        summary: Backed By Harvard Research section
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Body (raw HTML)
            name: bodyHtml
            widget: text
            required: false
          - label: Bottle image
            name: bottleImage
            widget: image
            required: false
      - label: Best ingredients
        name: ingredients
        widget: object
        collapsed: true
        summary: Only the Best Ingredients + why-this-formula copy
        fields:
          - label: Eyebrow
            name: eyebrow
            widget: string
            required: false
          - label: Heading
            name: heading
            widget: text
            required: false
          - label: Body (raw HTML)
            name: bodyHtml
            widget: text
            required: false
          - label: Bottle image
            name: bottleImage
            widget: image
            required: false
      - label: Join-thousands banner
        name: join
        widget: object
        collapsed: true
        summary: Bottle lineup image + line above each buy box
        fields:
          - label: Bottles image
            name: image
            widget: image
            required: false
          - label: Text
            name: text
            widget: string
            required: false
      - label: Buy Box
        name: buyBox
        widget: object
        collapsed: true
        summary: The pricing cards — shown twice on the page, exactly like the source
        fields:
          - label: Payment icons image
            name: paymentImage
            widget: image
            required: false
          - label: Pricing cards
            name: cards
            widget: list
            required: false
            summary: '{{fields.title}}'
            fields:
              - label: Most popular (gold border, first on mobile)
                name: popular
                widget: boolean
                default: false
              - label: Badge text
                name: badge
                widget: string
                required: false
              - label: Title (e.g. 6 BOTTLES)
                name: title
                widget: string
              - label: Subtitle (e.g. 6-Month Supply)
                name: subtitle
                widget: string
                required: false
              - label: Bundle image
                name: image
                widget: image
                required: false
              - label: Image alt
                name: imageAlt
                widget: string
                required: false
              - label: Image style tweak (CSS)
                name: imageStyle
                widget: string
                required: false
              - label: Old price (struck through)
                name: priceOld
                widget: string
                required: false
              - label: Price
                name: price
                widget: string
              - label: Price note (e.g. per bottle)
                name: priceNote
                widget: string
                required: false
              - label: Price style tweak (CSS)
                name: priceStyle
                widget: string
                required: false
              - label: Shipping / bonus line
                name: shipping
                widget: string
                required: false
              - label: Button text (HTML, <br> for two lines)
                name: buttonHtml
                widget: text
                required: false
              - label: Checkout URL
                name: url
                widget: string
      - label: Personal promise + guarantee
        name: promise
        widget: object
        collapsed: true
        summary: Dr. Love's promise letter, profile card and guarantee card
        fields:
          - label: Eyebrow
            name: eyebrow
            widget: string
            required: false
          - label: Heading
            name: heading
            widget: text
            required: false
          - label: Body (raw HTML paragraphs)
            name: bodyHtml
            widget: text
            required: false
          - label: Profile photo
            name: photo
            widget: image
            required: false
          - label: Name
            name: name
            widget: string
            required: false
          - label: Role
            name: role
            widget: string
            required: false
          - label: Signature image
            name: signatureImage
            widget: image
            required: false
          - label: Guarantee card title
            name: guaranteeTitle
            widget: string
            required: false
          - label: Guarantee card text
            name: guaranteeText
            widget: text
            required: false
      - label: Supplement facts
        name: nutri
        widget: object
        collapsed: true
        summary: Bottle + label images and the ingredients list
        fields:
          - label: Bottle image
            name: bottleImage
            widget: image
            required: false
          - label: Supplement facts image
            name: factsImage
            widget: image
            required: false
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: List (raw HTML ul)
            name: listHtml
            widget: text
            required: false
      - label: Smart Way benefit rows
        name: smartWay
        widget: object
        collapsed: true
        summary: The 5 icon + copy benefit rows
        fields:
          - label: Heading
            name: heading
            widget: text
            required: false
          - label: Rows
            name: rows
            widget: list
            required: false
            summary: '{{fields.title}}'
            fields:
              - label: Icon image
                name: icon
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
              - label: Row background class
                name: bg
                widget: select
                required: false
                default: sw-bg3
                options:
                  - sw-bg1
                  - sw-bg2
                  - sw-bg3
              - label: Title
                name: title
                widget: string
                required: false
              - label: Text
                name: text
                widget: text
                required: false
      - label: Say YES section
        name: sayYes
        widget: object
        collapsed: true
        summary: Take-back-control column + Say YES to NMN column
        fields:
          - label: Top heading
            name: topHeading
            widget: text
            required: false
          - label: Heading
            name: heading
            widget: text
            required: false
          - label: Subtext
            name: subText
            widget: text
            required: false
          - label: Say-YES items
            name: items
            widget: list
            required: false
            summary: '{{fields.text}}'
            fields:
              - label: Icon image
                name: icon
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
              - label: Text
                name: text
                widget: string
                required: false
          - label: Yes heading
            name: yesHeading
            widget: string
            required: false
          - label: Yes subtext
            name: yesSub
            widget: string
            required: false
          - label: CTA button text
            name: ctaText
            widget: string
            required: false
          - label: CTA anchor
            name: ctaAnchor
            widget: string
            required: false
            default: '#cta-236'
      - label: Best price pitch
        name: bestPrice
        widget: object
        collapsed: true
        summary: How We Offer the Best NMN at the Best Price
        fields:
          - label: Heading (HTML)
            name: headingHtml
            widget: text
            required: false
          - label: Paragraphs
            name: paragraphs
            widget: list
            required: false
            field:
              label: Paragraph (HTML allowed)
              name: paragraph
              widget: text
      - label: FAQ
        name: faq
        widget: object
        collapsed: true
        summary: FAQ accordion items
        fields:
          - label: Eyebrow
            name: eyebrow
            widget: string
            required: false
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Subtext
            name: subText
            widget: text
            required: false
          - label: Questions
            name: items
            widget: list
            required: false
            summary: '{{fields.question}}'
            fields:
              - label: Question
                name: question
                widget: string
              - label: Answer (raw HTML)
                name: answerHtml
                widget: text
                required: false
      - label: 180-day guarantee block
        name: happy
        widget: object
        collapsed: true
        summary: Health & Happiness guarantee near the footer
        fields:
          - label: Badge image
            name: badgeImage
            widget: image
            required: false
          - label: Guarantee line (orange)
            name: guaranteeLine
            widget: string
            required: false
          - label: Heading
            name: heading
            widget: text
            required: false
          - label: Paragraphs
            name: paragraphs
            widget: list
            required: false
            field:
              label: Paragraph (HTML allowed)
              name: paragraph
              widget: text
      - label: Scientific citations
        name: citations
        widget: object
        collapsed: true
        summary: The citations list above the footer
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Citations
            name: entries
            widget: list
            required: false
            field:
              label: Citation (HTML, <i> allowed)
              name: entry
              widget: text
      - label: Footer
        name: footer
        widget: object
        collapsed: true
        summary: Supplement label, disclaimer, copyright and legal links
        fields:
          - label: Supplement facts image
            name: factsImage
            widget: image
            required: false
          - label: FDA disclaimer
            name: disclaimer
            widget: text
            required: false
          - label: Copyright line
            name: copyright
            widget: string
            required: false
          - label: Legal links
            name: links
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
              - label: URL
                name: href
                widget: string
  - name: salespagesroar
    label: RL - NMN - Product Pages 2
    label_singular: NMN product page (Roar layout)
    folder: src/content/salespagesroar
    create: true
    slug: '{{slug}}'
    extension: md
    format: frontmatter
    summary: '{{title}}'
    fields:
      - label: Internal name
        name: title
        widget: string
      - label: Published
        name: published
        widget: boolean
        default: true
      - label: Publishing (domain and URL)
        name: publishing
        widget: object
        collapsed: true
        summary: Where this page goes live (domain and page URL name)
        fields:
          - label: Domain
            name: domain
            widget: select
            required: false
            default: landers-ard.pages.dev
            hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
            options:
              - landers-ard.pages.dev
              - americanhealthjournals.com
              - americanwellnessjournal.com
              - moregoodyearsmd.com
              - moregoodyearsrx.com
          - label: Page URL name
            name: slug
            widget: string
            required: false
            hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
      - label: Template / style
        name: template
        widget: select
        default: roar
        options:
          - label: NMN Roar layout (roarlionsmane rip)
            value: roar
      - label: Browser-tab title (SEO)
        name: seoTitle
        widget: string
        required: false
      - label: og:url meta
        name: ogUrl
        widget: string
        required: false
      - label: og:image meta
        name: ogImage
        widget: image
        required: false
      - label: Facebook Pixel ID
        name: facebookPixelId
        widget: string
        required: false
        hint: Leave empty to ship without a pixel.
      - label: Sticky menu bar
        name: nav
        widget: object
        collapsed: true
        summary: Logo, nav links, phone and socials
        fields:
          - label: Logo image
            name: logoImage
            widget: image
            required: false
          - label: Nav links
            name: links
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
                required: false
              - label: Href (#anchor)
                name: href
                widget: string
                required: false
          - label: 'Phone HTML (e.g. Contact Us Anytime: <strong>…</strong>)'
            name: phoneHtml
            widget: text
            required: false
          - label: Social icons
            name: socials
            widget: list
            required: false
            summary: socials
            fields:
              - label: Href
                name: href
                widget: string
                required: false
              - label: Icon
                name: image
                widget: image
                required: false
              - label: Alt
                name: alt
                widget: string
                required: false
      - label: Hero (dark headline + bottle)
        name: hero
        widget: object
        collapsed: true
        summary: Headline, subhead, bottle, benefit pills, badges
        fields:
          - label: Logo image (before the apostrophe-s)
            name: logoImage
            widget: image
            required: false
          - label: Logo suffix
            name: logoSuffix
            widget: string
            required: false
            default: '''s'
          - label: Headline HTML (use <br> for line breaks)
            name: headlineHtml
            widget: text
            required: false
          - label: Subhead HTML
            name: subheadHtml
            widget: text
            required: false
          - label: Bottle image
            name: bottleImage
            widget: image
            required: false
          - label: Benefit pills
            name: pills
            widget: list
            required: false
            summary: pills
            fields:
              - label: Icon
                name: icon
                widget: image
                required: false
              - label: Text HTML
                name: textHtml
                widget: text
                required: false
          - label: Trust badges
            name: trustBadges
            widget: list
            required: false
            summary: badges
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
      - label: Stats bar + buy-now block
        name: stats
        widget: object
        collapsed: true
        summary: Stats and the Buy now / Save up to block
        fields:
          - label: Stat items
            name: items
            widget: list
            required: false
            summary: '{{fields.value}}'
            fields:
              - label: Value (e.g. 4M+)
                name: value
                widget: string
                required: false
              - label: Label
                name: label
                widget: string
                required: false
          - label: CTA line 1 HTML
            name: ctaLine1Html
            widget: text
            required: false
            default: Buy now<br>Save up to
          - label: CTA percent
            name: ctaPercent
            widget: string
            required: false
            default: 56%
          - label: CTA href
            name: ctaHref
            widget: string
            required: false
            default: '#snippet-section'
      - label: Featured on (media logos)
        name: featured
        widget: object
        collapsed: true
        summary: As-seen-on logos
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Logos
            name: logos
            widget: list
            required: false
            summary: logos
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Alt
                name: alt
                widget: string
                required: false
      - label: Dr. Love intro
        name: doctor
        widget: object
        collapsed: true
        summary: Photos, title, benefit cards, follower screenshots
        fields:
          - label: Suit photo
            name: suitImage
            widget: image
            required: false
          - label: Headshot (mobile)
            name: headshotImage
            widget: image
            required: false
          - label: Socials image
            name: socialsImage
            widget: image
            required: false
          - label: Greeting HTML
            name: greetingHtml
            widget: text
            required: false
          - label: Lead-in HTML (and I am one of…)
            name: leadInHtml
            widget: text
            required: false
          - label: Title HTML (Most Followed Neuroscientists…)
            name: titleHtml
            widget: text
            required: false
          - label: Followers HTML
            name: followersHtml
            widget: text
            required: false
          - label: Benefit cards
            name: benefitCards
            widget: list
            required: false
            summary: cards
            fields:
              - label: Text HTML
                name: textHtml
                widget: text
                required: false
          - label: After-cards paragraphs HTML
            name: afterCardsHtml
            widget: text
            required: false
          - label: “The best part is…” text
            name: bestPartText
            widget: string
            required: false
          - label: Closing HTML (How so?)
            name: closingHtml
            widget: text
            required: false
          - label: Follower screenshots
            name: phoneScreens
            widget: list
            required: false
            summary: screens
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Alt
                name: alt
                widget: string
                required: false
      - label: The science story (NAD+ decline)
        name: cause
        widget: object
        collapsed: true
        summary: Analogy, age visuals, decline paragraphs
        fields:
          - label: Question eyebrow
            name: questionEyebrow
            widget: string
            required: false
          - label: Question heading
            name: questionHeading
            widget: string
            required: false
          - label: Analogy cards
            name: analogyCards
            widget: list
            required: false
            summary: cards
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Body HTML
                name: bodyHtml
                widget: text
                required: false
          - label: “Now get this…” text
            name: nowGetThisText
            widget: string
            required: false
          - label: Paragraphs (part 1) HTML
            name: para1Html
            widget: text
            required: false
          - label: Age cards
            name: ageCards
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
                required: false
              - label: Image
                name: image
                widget: image
                required: false
          - label: Scan caption HTML
            name: scanCaptionHtml
            widget: text
            required: false
          - label: Brain/cell image
            name: brainImage
            widget: image
            required: false
          - label: Paragraphs (part 2) HTML
            name: para2Html
            widget: text
            required: false
      - label: Institutions + symptoms
        name: institutions
        widget: object
        collapsed: true
        summary: Institution links, symptoms, closing
        fields:
          - label: Separator image
            name: separatorImage
            widget: image
            required: false
          - label: Heading HTML
            name: headingHtml
            widget: text
            required: false
          - label: Browser cards
            name: browserCards
            widget: list
            required: false
            summary: '{{fields.url}}'
            fields:
              - label: URL
                name: url
                widget: string
                required: false
              - label: Screenshot
                name: image
                widget: image
                required: false
          - label: After-browser paragraphs HTML
            name: afterBrowserHtml
            widget: text
            required: false
          - label: Symptom cards
            name: symptomCards
            widget: list
            required: false
            summary: cards
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Body HTML
                name: bodyHtml
                widget: text
                required: false
          - label: “The worst part is…” text
            name: worstPartText
            widget: string
            required: false
          - label: Aging-spiral image
            name: neuronalImage
            widget: image
            required: false
          - label: Aging-spiral paragraphs HTML
            name: neuronalHtml
            widget: text
            required: false
          - label: “The best part is…” text
            name: bestPartText
            widget: string
            required: false
          - label: Closing HTML
            name: closingHtml
            widget: text
            required: false
      - label: Introducing the product
        name: intro
        widget: object
        collapsed: true
        summary: Brand lockup and numbered benefits
        fields:
          - label: Brand top word (big)
            name: brandTop
            widget: string
            required: false
          - label: Brand bottom word (small)
            name: brandBottom
            widget: string
            required: false
          - label: Icon image (left of wordmark)
            name: iconImage
            widget: image
            required: false
          - label: Product image
            name: bottleImage
            widget: image
            required: false
          - label: Trust badges
            name: trustBadges
            widget: list
            required: false
            summary: badges
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
          - label: Lead HTML
            name: leadHtml
            widget: text
            required: false
          - label: Numbered benefits
            name: benefits
            widget: list
            required: false
            summary: benefits
            fields:
              - label: Icon
                name: icon
                widget: image
                required: false
              - label: Text HTML
                name: textHtml
                widget: text
                required: false
      - label: Testimonial wall
        name: testimonials
        widget: object
        collapsed: true
        summary: Social-comment testimonials
        fields:
          - label: Heading HTML
            name: headingHtml
            widget: text
            required: false
          - label: Rating text
            name: ratingText
            widget: string
            required: false
          - label: Testimonials
            name: cards
            widget: list
            required: false
            summary: '{{fields.name}}'
            fields:
              - label: Avatar
                name: image
                widget: image
                required: false
              - label: Name
                name: name
                widget: string
                required: false
              - label: Comment HTML
                name: textHtml
                widget: text
                required: false
              - label: Date (e.g. 49 days ago)
                name: date
                widget: string
                required: false
              - label: Likes
                name: likes
                widget: string
                required: false
              - label: Show red heart
                name: liked
                widget: boolean
                default: false
      - label: Easy to use (dosage)
        name: easy
        widget: object
        collapsed: true
        summary: Dosage steps and CTA
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Subhead
            name: subhead
            widget: string
            required: false
          - label: Steps
            name: steps
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Label
                name: label
                widget: string
                required: false
          - label: CTA text
            name: ctaText
            widget: string
            required: false
            default: Buy Now - Save up to 56%
          - label: CTA href
            name: ctaHref
            widget: string
            required: false
            default: '#snippet-section'
          - label: CTA note
            name: ctaNote
            widget: string
            required: false
      - label: Ingredient spotlights
        name: ingredients
        widget: object
        collapsed: true
        summary: 'The #1/#2/#3 ingredient cards'
        fields:
          - label: Heading HTML
            name: headingHtml
            widget: text
            required: false
          - label: Subhead
            name: subhead
            widget: string
            required: false
          - label: Spotlights
            name: spotlights
            widget: list
            required: false
            summary: '{{fields.name}}'
            fields:
              - label: Number
                name: number
                widget: string
                required: false
              - label: Image
                name: image
                widget: image
                required: false
              - label: Name
                name: name
                widget: string
                required: false
              - label: Subtitle
                name: subtitle
                widget: string
                required: false
              - label: Lead HTML
                name: leadHtml
                widget: text
                required: false
              - label: Bullets
                name: bullets
                widget: list
                required: false
                summary: bullets
                fields:
                  - label: Material icon name
                    name: icon
                    widget: string
                    required: false
                  - label: Text HTML
                    name: textHtml
                    widget: text
                    required: false
              - label: Extra HTML
                name: extraHtml
                widget: text
                required: false
              - label: Side table image (optional)
                name: tableImage
                widget: image
                required: false
          - label: CTA text
            name: ctaText
            widget: string
            required: false
            default: Buy Now - Save up to 56%
          - label: CTA href
            name: ctaHref
            widget: string
            required: false
            default: '#snippet-section'
          - label: CTA note
            name: ctaNote
            widget: string
            required: false
      - label: Why buy from us
        name: whyBuy
        widget: object
        collapsed: true
        summary: Complex process and the pricing secret
        fields:
          - label: Brand top word (big)
            name: brandTop
            widget: string
            required: false
          - label: Brand bottom word (small)
            name: brandBottom
            widget: string
            required: false
          - label: Icon image (left of wordmark)
            name: iconImage
            widget: image
            required: false
          - label: Product image
            name: bottleImage
            widget: image
            required: false
          - label: Lead HTML
            name: leadHtml
            widget: text
            required: false
          - label: “I truly believe…” box HTML
            name: believeHtml
            widget: text
            required: false
          - label: After-believe HTML
            name: afterBelieveHtml
            widget: text
            required: false
          - label: Process heading
            name: processHeading
            widget: string
            required: false
          - label: Process columns
            name: processCols
            widget: list
            required: false
            summary: columns
            fields:
              - label: Material icon name
                name: icon
                widget: string
                required: false
              - label: Body HTML
                name: bodyHtml
                widget: text
                required: false
          - label: Trust badges
            name: trustBadges
            widget: list
            required: false
            summary: badges
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
          - label: “Man buying online” image
            name: manImage
            widget: image
            required: false
          - label: Process paragraphs HTML
            name: processParasHtml
            widget: text
            required: false
          - label: “So act now…” heading
            name: actNowHeading
            widget: string
            required: false
          - label: Act-now subtext
            name: actNowSub
            widget: string
            required: false
          - label: Secret heading
            name: secretHeading
            widget: string
            required: false
          - label: Secret-pricing image
            name: brainMushImage
            widget: image
            required: false
          - label: Secret paragraphs HTML
            name: secretParasHtml
            widget: text
            required: false
      - label: Price story
        name: price
        widget: object
        collapsed: true
        summary: The “less than $2/day” story
        fields:
          - label: Pretext
            name: pretext
            widget: string
            required: false
          - label: Heading HTML
            name: headingHtml
            widget: text
            required: false
          - label: Image
            name: image
            widget: image
            required: false
          - label: Paragraphs HTML
            name: parasHtml
            widget: text
            required: false
          - label: Closing line
            name: closing
            widget: string
            required: false
      - label: Buy box (renders twice)
        name: buyBox
        widget: object
        collapsed: true
        summary: 3 pricing cards, shown in two places
        fields:
          - label: Eyebrow
            name: eyebrow
            widget: string
            required: false
            default: 'On this page only:'
          - label: Heading
            name: heading
            widget: string
            required: false
            default: Save up to 56% Today!
          - label: Cards
            name: cards
            widget: list
            required: false
            summary: '{{fields.title}}'
            fields:
              - label: Popular (gold band + savings)
                name: popular
                widget: boolean
                default: false
              - label: Badge (Most Popular)
                name: badge
                widget: string
                required: false
              - label: Title
                name: title
                widget: string
                required: false
              - label: Supply
                name: supply
                widget: string
                required: false
              - label: Supply text color class
                name: supplyClass
                widget: string
                required: false
                default: text-red-600
              - label: Pack image
                name: image
                widget: image
                required: false
              - label: Show guarantee badge
                name: showGuaranteeBadge
                widget: boolean
                default: true
              - label: Show savings starburst
                name: showSavings
                widget: boolean
                default: false
              - label: Savings text
                name: savingsText
                widget: string
                required: false
                default: 56%
              - label: Old price (strikethrough)
                name: priceOld
                widget: string
                required: false
              - label: Price
                name: price
                widget: string
                required: false
              - label: Big price (popular card)
                name: priceBig
                widget: boolean
                default: false
              - label: Price note
                name: priceNote
                widget: string
                required: false
                default: per<br />bottle
              - label: Shipping text
                name: shipping
                widget: string
                required: false
              - label: Free shipping (truck icon)
                name: shippingFree
                widget: boolean
                default: true
              - label: Button text
                name: buttonText
                widget: string
                required: false
                default: Try it Now - Risk Free
              - label: Checkout URL
                name: url
                widget: string
                required: false
              - label: Total
                name: total
                widget: string
                required: false
          - label: Payment icons image
            name: paymentImage
            widget: image
            required: false
      - label: Guarantee
        name: guarantee
        widget: object
        collapsed: true
        summary: 180-day guarantee
        fields:
          - label: Badge image
            name: badgeImage
            widget: image
            required: false
          - label: Heading HTML
            name: headingHtml
            widget: text
            required: false
          - label: Body HTML
            name: bodyHtml
            widget: text
            required: false
      - label: Say YES recap
        name: sayYes
        widget: object
        collapsed: true
        summary: Brand lockup and the YES list
        fields:
          - label: Brand top word (big)
            name: brandTop
            widget: string
            required: false
          - label: Brand bottom word (small)
            name: brandBottom
            widget: string
            required: false
          - label: Icon image (left of wordmark)
            name: iconImage
            widget: image
            required: false
          - label: Product image
            name: bottleImage
            widget: image
            required: false
          - label: Trust badges
            name: trustBadges
            widget: list
            required: false
            summary: badges
            fields:
              - label: Image
                name: image
                widget: image
                required: false
              - label: Alt text
                name: alt
                widget: string
                required: false
          - label: Lead text
            name: leadText
            widget: string
            required: false
          - label: Yes items
            name: items
            widget: list
            required: false
            summary: items
            fields:
              - label: Icon
                name: icon
                widget: image
                required: false
              - label: Text HTML
                name: textHtml
                widget: text
                required: false
          - label: CTA text
            name: ctaText
            widget: string
            required: false
            default: Buy Now - Save up to 56%
          - label: CTA href
            name: ctaHref
            widget: string
            required: false
            default: '#snippet-section'
          - label: CTA note
            name: ctaNote
            widget: string
            required: false
      - label: Scientific citations
        name: citations
        widget: object
        collapsed: true
        summary: Reference list
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
            default: 'Scientific Citations:'
          - label: Entries
            name: entries
            widget: list
            required: false
            field:
              label: Citation
              name: entry
              widget: text
      - label: Footer
        name: footer
        widget: object
        collapsed: true
        summary: Supplement facts, company info, legal links
        fields:
          - label: Supplement facts image
            name: factsImage
            widget: image
            required: false
          - label: Facts disclaimer
            name: factsDisclaimer
            widget: text
            required: false
          - label: Footer logo (white)
            name: logoImage
            widget: image
            required: false
          - label: Company HTML (address, phone, email)
            name: companyHtml
            widget: text
            required: false
          - label: Footer links
            name: links
            widget: list
            required: false
            summary: '{{fields.label}}'
            fields:
              - label: Label
                name: label
                widget: string
                required: false
              - label: Href
                name: href
                widget: string
                required: false
  - name: leadforms
    label: Lead-form pages (request an offer)
    label_singular: Lead-form page
    folder: src/content/leadforms
    create: true
    slug: '{{slug}}'
    extension: md
    format: frontmatter
    summary: '{{title}}'
    fields:
      - label: Internal name
        name: title
        widget: string
        hint: Only you see this — used in lists.
      - label: Published
        name: published
        widget: boolean
        default: true
      - label: Publishing (domain and URL)
        name: publishing
        widget: object
        collapsed: true
        summary: Where this page goes live (domain and page URL name)
        fields:
          - label: Domain
            name: domain
            widget: select
            required: false
            default: landers-ard.pages.dev
            hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
            options:
              - landers-ard.pages.dev
              - americanhealthjournals.com
              - americanwellnessjournal.com
              - moregoodyearsmd.com
              - moregoodyearsrx.com
          - label: Page URL name
            name: slug
            widget: string
            required: false
            hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
      - label: Template / style
        name: template
        widget: select
        default: lead-form
        options:
          - label: Lead form (request an offer)
            value: lead-form
      - label: Browser-tab title (SEO)
        name: seoTitle
        widget: string
        required: false
      - label: Meta description (SEO)
        name: seoDescription
        widget: text
        required: false
      - label: Show header
        name: showHeader
        widget: boolean
        default: true
      - label: Logo image
        name: logoImage
        widget: image
        required: false
      - label: Logo alt text
        name: logoAlt
        widget: string
        required: false
      - label: Logo text (shown if no logo image)
        name: logoText
        widget: string
        required: false
      - label: Phone number (click-to-call)
        name: phone
        widget: string
        required: false
      - label: Header nav links
        name: navLinks
        widget: list
        required: false
        summary: '{{fields.label}}'
        fields:
          - label: Label
            name: label
            widget: string
          - label: Link (#anchor or URL)
            name: href
            widget: string
      - label: Social links
        name: socials
        widget: list
        required: false
        summary: '{{fields.type}}'
        fields:
          - label: Network
            name: type
            widget: select
            options:
              - label: Instagram
                value: instagram
              - label: Facebook
                value: facebook
              - label: WhatsApp
                value: whatsapp
              - label: YouTube
                value: youtube
          - label: Link
            name: href
            widget: string
      - label: Header button text (optional)
        name: headerCtaLabel
        widget: string
        required: false
      - label: Header button link
        name: headerCtaHref
        widget: string
        required: false
        hint: Usually '#solicitar' to jump to the form.
      - label: Design / skin
        name: formatting
        widget: object
        collapsed: true
        summary: Colors & fonts — change these to re-skin the whole page
        fields:
          - label: Brand color (header / headings)
            name: brandColor
            widget: color
            default: '#102646'
          - label: Accent color (CTAs / prices)
            name: accentColor
            widget: color
            default: '#cb0019'
          - label: Button color
            name: buttonColor
            widget: color
            default: '#cb0019'
            allowInput: true
            hint: Defaults to the accent color.
          - label: Button text color
            name: buttonTextColor
            widget: color
            default: '#ffffff'
          - label: Background color
            name: backgroundColor
            widget: color
            default: '#ffffff'
          - label: Tinted section background
            name: softBackgroundColor
            widget: color
            default: '#f5f7fa'
          - label: Font color
            name: fontColor
            widget: color
            default: '#2e2e2e'
          - label: Body font
            name: fontFamily
            widget: select
            default: roboto
            options:
              - label: Roboto (webfont, default)
                value: roboto
              - label: System sans-serif
                value: system
              - label: Arial
                value: arial
              - label: Georgia (serif)
                value: georgia
          - label: Heading font
            name: headingFontFamily
            widget: select
            default: roboto
            options:
              - label: Roboto (default)
                value: roboto
              - label: Oswald (condensed)
                value: oswald
              - label: System sans-serif
                value: system
              - label: Arial
                value: arial
          - label: Font size — desktop (px)
            name: fontSizeDesktop
            widget: number
            value_type: int
            default: 17
            min: 12
            max: 26
          - label: Font size — mobile (px)
            name: fontSizeMobile
            widget: number
            value_type: int
            default: 16
            min: 12
            max: 24
      - label: Eyebrow (small chip above headline)
        name: eyebrow
        widget: string
        required: false
      - label: Headline
        name: headline
        widget: string
      - label: Subheadline
        name: subhead
        widget: text
        required: false
      - label: Hero background image (optional)
        name: heroImage
        widget: image
        required: false
        hint: A dark overlay is applied so white text stays readable.
      - label: Hero image alt text
        name: heroAlt
        widget: string
        required: false
      - label: Lead-capture form
        name: form
        widget: object
        summary: '{{fields.heading}}'
        fields:
          - label: Form heading
            name: heading
            widget: string
            default: Solicitar Oferta
          - label: Intro text (optional)
            name: intro
            widget: text
            required: false
          - label: Fields
            name: fields
            widget: list
            label_singular: field
            summary: '{{fields.label}}'
            hint: The inputs shown in the form. Drag to reorder.
            fields:
              - label: Field name (posted key, no spaces)
                name: name
                widget: string
                hint: e.g. 'nombre', 'email'.
              - label: Label
                name: label
                widget: string
              - label: Placeholder
                name: placeholder
                widget: string
                required: false
              - label: Type
                name: type
                widget: select
                default: text
                options:
                  - label: Text
                    value: text
                  - label: Email
                    value: email
                  - label: Phone
                    value: tel
                  - label: Number
                    value: number
                  - label: Dropdown (select)
                    value: select
                  - label: Multi-line (textarea)
                    value: textarea
              - label: Required
                name: required
                widget: boolean
                default: true
              - label: Width
                name: width
                widget: select
                default: full
                options:
                  - label: Full row
                    value: full
                  - label: Half row
                    value: half
              - label: Dropdown options (one per item — only for Dropdown type)
                name: options
                widget: list
                required: false
                field:
                  label: Option
                  name: option
                  widget: string
          - label: Consent checkboxes
            name: consents
            widget: list
            required: false
            summary: '{{fields.text}}'
            fields:
              - label: Text (supports links via markdown)
                name: text
                widget: string
              - label: Required
                name: required
                widget: boolean
                default: true
          - label: Submit button text
            name: submitLabel
            widget: string
            default: Enviar
          - label: Form action URL (leave empty until backend is built)
            name: action
            widget: string
            required: false
            hint: Empty = the page just shows the success message. Add a POST endpoint here in step 2.
          - label: Success title (optional)
            name: successTitle
            widget: string
            required: false
          - label: Success message
            name: successMessage
            widget: text
      - label: Offers section heading
        name: offersHeading
        widget: string
        required: false
      - label: Offers section subheading
        name: offersSubhead
        widget: text
        required: false
      - label: Offers
        name: offers
        widget: list
        required: false
        summary: '{{fields.name}} — {{fields.price}}'
        fields:
          - label: Model / offer name
            name: name
            widget: string
          - label: Image
            name: image
            widget: image
            required: false
          - label: Image alt text
            name: imageAlt
            widget: string
            required: false
          - label: Ribbon badge (optional)
            name: badge
            widget: string
            required: false
          - label: Price label
            name: priceLabel
            widget: string
            default: Desde
          - label: Price
            name: price
            widget: string
            required: false
          - label: Fine print under price
            name: note
            widget: string
            required: false
          - label: Button text (optional)
            name: ctaLabel
            widget: string
            required: false
          - label: Button link
            name: ctaHref
            widget: string
            required: false
            hint: Usually '#solicitar' to scroll to the form.
      - label: Offers disclaimer / fine print
        name: offersDisclaimer
        widget: text
        required: false
      - label: Showcase section heading
        name: modelsHeading
        widget: string
        required: false
      - label: Showcase section subheading
        name: modelsSubhead
        widget: text
        required: false
      - label: Showcase cards
        name: models
        widget: list
        required: false
        summary: '{{fields.name}}'
        fields:
          - label: Name
            name: name
            widget: string
          - label: Image
            name: image
            widget: image
            required: false
          - label: Image alt text
            name: imageAlt
            widget: string
            required: false
          - label: Stat (e.g. '35 MPG')
            name: stat
            widget: string
            required: false
          - label: Stat label (e.g. 'EPA combinado')
            name: statLabel
            widget: string
            required: false
      - label: Footer columns
        name: footerColumns
        widget: list
        required: false
        summary: '{{fields.heading}}'
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Body (markdown — address, hours, links)
            name: body
            widget: markdown
            required: false
      - label: Footer legal links (optional — defaults to Privacy/Terms/Disclaimer)
        name: footerLegalLinks
        widget: list
        required: false
        summary: '{{fields.label}}'
        fields:
          - label: Label
            name: label
            widget: string
          - label: Link
            name: href
            widget: string
      - label: Footer disclaimer text
        name: footerDisclaimer
        widget: text
        required: false
      - label: Footer copyright line
        name: footerCopyright
        widget: string
        required: false
      - label: Show legal footer
        name: showLegalFooter
        widget: boolean
        default: true
  - name: dealspages
    label: Deals pages (dealer offers + form)
    label_singular: Deals page
    folder: src/content/dealspages
    create: true
    slug: '{{slug}}'
    extension: md
    format: frontmatter
    summary: '{{title}}'
    fields:
      - label: Internal name
        name: title
        widget: string
      - label: Published
        name: published
        widget: boolean
        default: true
      - label: Publishing (domain and URL)
        name: publishing
        widget: object
        collapsed: true
        summary: Where this page goes live (domain and page URL name)
        fields:
          - label: Domain
            name: domain
            widget: select
            required: false
            default: landers-ard.pages.dev
            hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
            options:
              - landers-ard.pages.dev
              - americanhealthjournals.com
              - americanwellnessjournal.com
              - moregoodyearsmd.com
              - moregoodyearsrx.com
          - label: Page URL name
            name: slug
            widget: string
            required: false
            hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
      - label: Template / style
        name: template
        widget: select
        default: hyundai-deals
        options:
          - label: Dealer deals + form
            value: hyundai-deals
      - label: Browser-tab title (SEO)
        name: seoTitle
        widget: string
        required: false
      - label: Meta description (SEO)
        name: seoDescription
        widget: text
        required: false
      - label: Show header
        name: showHeader
        widget: boolean
        default: true
      - label: Logo image
        name: logoImage
        widget: image
        required: false
      - label: Logo alt text
        name: logoAlt
        widget: string
        required: false
      - label: Phone (click-to-call)
        name: phone
        widget: string
        required: false
      - label: Header nav links
        name: navLinks
        widget: list
        required: false
        summary: '{{fields.label}}'
        fields:
          - label: Label
            name: label
            widget: string
          - label: Link (#anchor or URL)
            name: href
            widget: string
      - label: Social links
        name: socials
        widget: list
        required: false
        summary: '{{fields.type}}'
        fields:
          - label: Network
            name: type
            widget: select
            options:
              - label: Instagram
                value: instagram
              - label: Facebook
                value: facebook
              - label: WhatsApp
                value: whatsapp
              - label: YouTube
                value: youtube
              - label: X
                value: x
          - label: Link
            name: href
            widget: string
      - label: Design / skin
        name: formatting
        widget: object
        collapsed: true
        summary: Colors & font — change these to re-skin the whole page
        fields:
          - label: Primary color (buttons / accents)
            name: primaryColor
            widget: color
            default: '#102646'
          - label: Heading color
            name: headingColor
            widget: color
            default: '#171717'
          - label: Body / input text color
            name: textColor
            widget: color
            default: '#2e2e2e'
          - label: Background color
            name: backgroundColor
            widget: color
            default: '#ffffff'
          - label: Tinted section background
            name: softBackgroundColor
            widget: color
            default: '#f6f6f6'
          - label: Border / hairline color
            name: borderColor
            widget: color
            default: '#dddddd'
          - label: Input background
            name: inputBackground
            widget: color
            default: '#fcfcfc'
          - label: Font
            name: fontFamily
            widget: select
            default: inter
            options:
              - label: Inter (webfont, default)
                value: inter
              - label: System sans-serif
                value: system
              - label: Arial
                value: arial
          - label: Font size — desktop (px)
            name: fontSizeDesktop
            widget: number
            value_type: int
            default: 16
            min: 12
            max: 24
          - label: Font size — mobile (px)
            name: fontSizeMobile
            widget: number
            value_type: int
            default: 15
            min: 12
            max: 22
      - label: Hero title (above slider, e.g. 'Ofertas')
        name: heroTitle
        widget: string
        required: false
      - label: Promo slides (hero slider)
        name: slides
        widget: list
        required: false
        summary: '{{fields.alt}}'
        fields:
          - label: Image
            name: image
            widget: image
          - label: Alt text
            name: alt
            widget: string
            required: false
          - label: Link (optional)
            name: href
            widget: string
            required: false
      - label: Lead-capture form
        name: form
        widget: object
        summary: '{{fields.heading}}'
        fields:
          - label: Form heading
            name: heading
            widget: string
            default: Solicitar Oferta
          - label: Fields
            name: fields
            widget: list
            label_singular: field
            summary: '{{fields.label}}'
            fields:
              - label: Field name (posted key)
                name: name
                widget: string
              - label: Label
                name: label
                widget: string
              - label: Placeholder
                name: placeholder
                widget: string
                required: false
              - label: Type
                name: type
                widget: select
                default: text
                options:
                  - label: Text
                    value: text
                  - label: Email
                    value: email
                  - label: Phone
                    value: tel
                  - label: Number
                    value: number
                  - label: Dropdown (select)
                    value: select
                  - label: Multi-line
                    value: textarea
              - label: Required
                name: required
                widget: boolean
                default: true
              - label: Width
                name: width
                widget: select
                default: full
                options:
                  - label: Full row
                    value: full
                  - label: Half row
                    value: half
              - label: Dropdown options
                name: options
                widget: list
                required: false
                field:
                  label: Option
                  name: option
                  widget: string
          - label: Consent checkboxes
            name: consents
            widget: list
            required: false
            summary: '{{fields.text}}'
            fields:
              - label: Text (markdown links ok)
                name: text
                widget: string
              - label: Required
                name: required
                widget: boolean
                default: true
          - label: Submit button text
            name: submitLabel
            widget: string
            default: Enviar
          - label: Form action URL (leave empty until backend exists)
            name: action
            widget: string
            required: false
          - label: Success message
            name: successMessage
            widget: text
          - label: Authorization fine print (under button)
            name: authorizationNote
            widget: text
            required: false
      - label: Offers heading
        name: offersHeading
        widget: string
        default: Ofertas
      - label: Deal cards
        name: deals
        widget: list
        required: false
        summary: '{{fields.name}} — {{fields.price}}'
        fields:
          - label: Model name
            name: name
            widget: string
          - label: Image
            name: image
            widget: image
            required: false
          - label: Image alt
            name: imageAlt
            widget: string
            required: false
          - label: Price label
            name: priceLabel
            widget: string
            default: desde
          - label: Price
            name: price
            widget: string
            required: false
          - label: Detail / fine print
            name: detail
            widget: string
            required: false
          - label: Button text
            name: ctaLabel
            widget: string
            default: Solicitar oferta
          - label: Button link
            name: ctaHref
            widget: string
            default: '#solicitar'
      - label: Showcase heading
        name: showcaseHeading
        widget: string
        required: false
      - label: Model lineup
        name: showcase
        widget: list
        required: false
        summary: '{{fields.name}}'
        fields:
          - label: Name
            name: name
            widget: string
          - label: Image
            name: image
            widget: image
            required: false
          - label: Image alt
            name: imageAlt
            widget: string
            required: false
          - label: Link (optional)
            name: href
            widget: string
            required: false
      - label: Show newsletter section
        name: showNewsletter
        widget: boolean
        default: true
      - label: Newsletter heading
        name: newsletterHeading
        widget: string
        default: Obten novedades de tus favoritos
      - label: Newsletter placeholder
        name: newsletterPlaceholder
        widget: string
        default: Email
      - label: Newsletter button
        name: newsletterButton
        widget: string
        default: Suscribirse
      - label: Newsletter success message
        name: newsletterSuccess
        widget: string
        default: ¡Gracias por suscribirte!
      - label: Legal fine print (paragraphs)
        name: finePrint
        widget: list
        required: false
        field:
          label: Paragraph
          name: text
          widget: text
      - label: Footer columns
        name: footerColumns
        widget: list
        required: false
        summary: '{{fields.heading}}'
        fields:
          - label: Heading
            name: heading
            widget: string
            required: false
          - label: Body (markdown)
            name: body
            widget: markdown
            required: false
      - label: Footer QR image
        name: footerQrImage
        widget: image
        required: false
      - label: Footer QR caption
        name: footerQrCaption
        widget: string
        required: false
      - label: Footer legal links
        name: footerLegalLinks
        widget: list
        required: false
        summary: '{{fields.label}}'
        fields:
          - label: Label
            name: label
            widget: string
          - label: Link
            name: href
            widget: string
      - label: Footer copyright
        name: footerCopyright
        widget: string
        required: false
  - name: listicles
    label: Listicles (reasons pre-sells)
    label_singular: Listicle
    folder: src/content/listicles
    create: true
    slug: '{{slug}}'
    extension: md
    format: frontmatter
    summary: '{{title}}'
    fields:
      - label: Internal name
        name: title
        widget: string
        hint: Only you see this — used in lists.
      - label: Published
        name: published
        widget: boolean
        default: true
      - label: Publishing (domain and URL)
        name: publishing
        widget: object
        collapsed: true
        summary: Where this page goes live (domain and page URL name)
        fields:
          - label: Domain
            name: domain
            widget: select
            required: false
            default: landers-ard.pages.dev
            hint: Every domain and subdomain available for publishing. New subdomains show up here once Cloudflare knows about them.
            options:
              - landers-ard.pages.dev
              - americanhealthjournals.com
              - americanwellnessjournal.com
              - moregoodyearsmd.com
              - moregoodyearsrx.com
          - label: Page URL name
            name: slug
            widget: string
            required: false
            hint: The page name in the web address, like nmn-report. Leave empty to use the file name. Changing it moves the page and the old address stops working.
      - label: Template / style
        name: template
        widget: select
        default: listicle-reasons
        options:
          - label: Reasons listicle
            value: listicle-reasons
      - label: Browser-tab title (SEO)
        name: seoTitle
        widget: string
        required: false
      - label: Meta description (SEO)
        name: seoDescription
        widget: text
        required: false
      - label: Urgency bar text (optional)
        name: urgencyText
        widget: string
        required: false
        hint: Thin dark bar above the header. Good place for an 'Advertisement' label.
      - label: Show header
        name: showHeader
        widget: boolean
        default: true
      - label: Logo image
        name: logoImage
        widget: image
        required: false
      - label: Logo alt text
        name: logoAlt
        widget: string
        required: false
      - label: Header nav links
        name: navLinks
        widget: list
        required: false
        summary: '{{fields.label}}'
        fields:
          - label: Label
            name: label
            widget: string
          - label: Link (#anchor or URL)
            name: href
            widget: string
      - label: Header button text
        name: headerCtaLabel
        widget: string
        required: false
      - label: Header button link
        name: headerCtaHref
        widget: string
        required: false
      - label: Design / skin
        name: formatting
        widget: object
        collapsed: true
        summary: Colors & fonts — change these to re-skin the whole page
        fields:
          - label: Accent color
            name: accentColor
            widget: color
            default: '#017d3e'
            hint: Reason numbers, headings highlights, links, callouts.
          - label: Button color
            name: buttonColor
            widget: color
            default: '#ee9100'
          - label: Button text color
            name: buttonTextColor
            widget: color
            default: '#ffffff'
          - label: Background color
            name: backgroundColor
            widget: color
            default: '#ffffff'
          - label: Tinted section background
            name: softBackgroundColor
            widget: color
            default: '#f2f8f5'
          - label: Body font
            name: fontFamily
            widget: select
            default: opensans
            options:
              - label: Open Sans (webfont, default)
                value: opensans
              - label: System sans-serif
                value: system
              - label: Georgia (serif)
                value: georgia
              - label: Arial
                value: arial
              - label: Verdana
                value: verdana
          - label: Heading font
            name: headingFontFamily
            widget: select
            default: oswald
            options:
              - label: Oswald (condensed, default)
                value: oswald
              - label: Open Sans
                value: opensans
              - label: System sans-serif
                value: system
              - label: Georgia (serif)
                value: georgia
          - label: Font color
            name: fontColor
            widget: color
            default: '#2c2645'
          - label: Font size — desktop (px)
            name: fontSizeDesktop
            widget: number
            value_type: int
            default: 18
            min: 12
            max: 28
          - label: Font size — mobile (px)
            name: fontSizeMobile
            widget: number
            value_type: int
            default: 17
            min: 12
            max: 24
      - label: Eyebrow (small text above headline)
        name: eyebrow
        widget: string
        required: false
      - label: Headline
        name: headline
        widget: string
        hint: Wrap words in **stars** to color them with the accent color.
      - label: Intro paragraph
        name: intro
        widget: markdown
        required: false
      - label: Hero image (optional)
        name: heroImage
        widget: image
        required: false
      - label: Hero image alt text
        name: heroImageAlt
        widget: string
        required: false
      - label: Hero button text
        name: heroCtaLabel
        widget: string
        required: false
      - label: Hero button link
        name: heroCtaHref
        widget: string
        required: false
      - label: Small text under hero button
        name: heroCtaSubtext
        widget: string
        required: false
      - label: Rating line (e.g. '4.9 / 5 from 1,300+ reviews')
        name: ratingText
        widget: string
        required: false
      - label: Trust badges
        name: trustBadges
        widget: list
        required: false
        summary: '{{fields.title}}'
        fields:
          - label: Badge image
            name: image
            widget: image
            required: false
          - label: Label
            name: title
            widget: string
            required: false
      - label: Reasons
        name: reasons
        widget: list
        label_singular: reason
        summary: '{{fields.title}}'
        hint: Each becomes a numbered reason. Drag to reorder (numbers update automatically), toggle Hidden to keep without showing.
        fields:
          - label: Hidden
            name: hidden
            widget: boolean
            default: false
          - label: Anchor id (optional)
            name: anchor
            widget: string
            required: false
          - label: Reason headline
            name: title
            widget: string
          - label: Body text
            name: body
            widget: markdown
            required: false
          - label: Subheading (e.g. 'Why NMN')
            name: subheading
            widget: string
            required: false
          - label: Callout chip (e.g. '500MG NMN')
            name: callout
            widget: string
            required: false
          - label: Image (optional)
            name: image
            widget: image
            required: false
          - label: Image alt text
            name: imageAlt
            widget: string
            required: false
      - label: Experts section heading
        name: doctorsHeading
        widget: string
        required: false
      - label: Expert / doctor quotes
        name: doctors
        widget: list
        required: false
        summary: '{{fields.name}}'
        fields:
          - label: Avatar image
            name: image
            widget: image
            required: false
          - label: Name
            name: name
            widget: string
            required: false
          - label: Credentials / title
            name: credentials
            widget: string
            required: false
          - label: Quote
            name: quote
            widget: text
            required: false
      - label: Message eyebrow (small line above heading)
        name: messageEyebrow
        widget: string
        required: false
      - label: Message heading
        name: messageHeading
        widget: string
        required: false
      - label: Message body
        name: messageBody
        widget: markdown
        required: false
      - label: Message photo (headshot)
        name: messagePhoto
        widget: image
        required: false
      - label: Message name
        name: messageName
        widget: string
        required: false
      - label: Message role / credentials
        name: messageRole
        widget: string
        required: false
      - label: Signature image
        name: messageSignatureImage
        widget: image
        required: false
      - label: Guarantee badge image
        name: guaranteeImage
        widget: image
        required: false
      - label: Guarantee card title
        name: guaranteeTitle
        widget: string
        required: false
      - label: Guarantee card text
        name: guaranteeText
        widget: text
        required: false
      - label: Final CTA heading
        name: ctaHeading
        widget: string
        required: false
      - label: Final CTA subtext
        name: ctaSubhead
        widget: markdown
        required: false
      - label: Final CTA button text
        name: ctaButtonLabel
        widget: string
        required: false
      - label: Final CTA button link
        name: ctaButtonHref
        widget: string
        required: false
      - label: Small text under final button
        name: ctaSubtext
        widget: string
        required: false
      - label: Footer disclaimer text
        name: footerDisclaimer
        widget: text
        required: false
      - label: Footer copyright line
        name: footerCopyright
        widget: string
        required: false
      - label: Show legal footer
        name: showLegalFooter
        widget: boolean
        default: true
